Obtaining baseline patient information

ABSTRACT

The disclosure relates to a method and system for obtaining baseline patient information. In some examples, a method may include acquiring first patient data, wherein the first patient data comprises at least one of first posture state data indicative of a plurality of posture states of a patient during a first time period or first therapy adjustment data indicative of a plurality of patient therapy adjustments made during the first time period; generating baseline patient information based at least in part on the first patient data; and comparing the baseline patient information to patient information generated based on second patient data. Therapy is not delivered to the patient according to a detected posture state of the patient during the first time period, and therapy is delivered to the patient according to the detected posture state of the patient during the second time period.

This application is a continuation of U.S. application Ser. No.12/433,749, filed Apr. 30, 2009, which claims the benefit of U.S.Provisional Application Ser. No. 61/080,000, filed Jul. 11, 2008, theentire content of each of which is incorporated herein by reference.

TECHNICAL FIELD

The disclosure relates to medical devices and, more particularly, toprogrammable medical devices that deliver therapy.

BACKGROUND

A variety of medical devices are used for chronic, e.g., long-term,delivery of therapy to patients suffering from a variety of conditions,such as chronic pain, tremor, Parkinson's disease, epilepsy, urinary orfecal incontinence, sexual dysfunction, obesity, or gastroparesis. Asexamples, electrical stimulation generators are used for chronicdelivery of electrical stimulation therapies such as cardiac pacing,neurostimulation, muscle stimulation, or the like. Pumps or other fluiddelivery devices may be used for chronic delivery of therapeutic agents,such as drugs. Typically, such devices provide therapy continuously orperiodically according to parameters contained within a program. Aprogram may comprise respective values for each of a plurality ofparameters, specified by a clinician.

In some cases, the patient may be allowed to activate and/or modify thetherapy delivered by the medical device. For example, a patient may beprovided with a patient programming device. The patient programmingdevice communicates with a medical device to allow the patient toactivate therapy and/or adjust therapy parameters. For example, animplantable medical device (IMD), such as an implantableneurostimulator, may be accompanied by an external patient programmerthat permits the patient to activate and deactivate neurostimulationtherapy and/or adjust the intensity of the delivered neurostimulation.The patient programmer may communicate with the IMD via wirelesstelemetry to control the IMD and/or retrieve information from the IMD.

SUMMARY

In general, the disclosure describes medical devices, systems andtechniques related to the delivery of therapy to a patient by a medicaldevice. The therapy may include electrical stimulation therapy or othertherapies. A medical device may be configured to monitor posture stateof patient and/or patient therapy adjustments and, in some examples,deliver therapy to a patient according to the detected posture state ofthe patient. The delivery of therapy to a patient by a medical deviceaccording to the detected patient posture state may generally bereferred to as posture-responsive therapy, and may include detecting theposture state of a patient, e.g., via one or more posture sensors, andadjusting the value of one or more therapy parameters based on thedetected patient posture state.

A medical device may monitor the posture state of a patient over aperiod of time during which posture-responsive therapy is not deliveredto a patient. For example, during such a time period, a medical devicemay deliver therapy to a patient albeit on a non-posture responsivebasis, i.e., the therapy is not delivered according to the detectedpatient posture state. Alternatively, a patient may not receive therapyin general during the time period in which the patient posture state ismonitored by the medical device. The period of time may include a periodof time prior to that of period when a patient receivesposture-responsive therapy, a period of time after the termination ofposture-responsive therapy, or any combination thereof. Additionally oralternatively, a medical device may monitor the number of therapyadjustments made by a patient over a period of time during whichposture-responsive therapy is not delivered to a patient. For example,during such a time period, a medical device may deliver therapy to apatient albeit on a non-posture responsive basis, i.e., the therapy isnot delivered according to the detected patient posture state.

By monitoring the patient posture state and/or patient therapyadjustments, the medical device may gather patient data that includesone or more of posture state data indicative of the patient posturestate during the time period when the patient was not receivingposture-responsive therapy and therapy adjustment information indicativeof patient therapy adjustments made during the time period when thepatient was not receiving posture-responsive therapy. Using the patientdata gathered during that time period, baseline patient information maythen be generated. In some examples, the baseline patient informationmay include baseline posture state information, such as, e.g., baselineproportional posture information, baseline sleep quality information, orbaseline posture state transition information. Alternatively oradditionally, the baseline patient information may include baselinetherapy adjustment information, such as, e.g., the number of therapyadjustments made by patient over all or a portion of the time period.

The generated baseline patient information may then be compared topatient information that has been generated based on patient datagathered over a time period during which the patient receivedposture-responsive therapy from a medical device. In this manner, thebaseline patient information may used as a reference point to evaluateone or more aspects of the posture-responsive therapy. For example, amedical device may present such information to a user, such as, apatient or clinician, so the user may evaluate the efficacy of one ormore aspects of therapy in terms of the difference between patientposture state behavior and/or patient therapy adjustments beforedelivery of posture-responsive therapy versus a patient posture statebehavior and/or patient therapy adjustments during a time period inwhich posture-responsive therapy is delivered to the patient. In view ofthe comparison of the baseline patient information to the patientinformation corresponding to a posture-responsive time period, the usermay make an adjustment to one or more aspects of the posture-responsivetherapy. In other examples, a medical device may automatically orsemi-automatically adjust to one or more aspects of theposture-responsive therapy based on the comparison of the baselinepatient information to the patient information corresponding to aposture-responsive time period.

In one example, the disclosure provides a method comprising acquiringfirst patient data, wherein the first patient data comprises at leastone of first posture state data indicative of a plurality of posturestates of a patient during a first time period or first therapyadjustment data indicative of a plurality of patient therapy adjustmentsmade during the first time period; generating baseline patientinformation based at least in part on the first patient data; andcomparing the baseline patient information to patient informationgenerated based on second patient data, wherein the second patient datacomprises at least one of second posture state data indicative of aplurality of posture states of a patient during a second time period orsecond therapy adjustment data indicative of a plurality of patienttherapy adjustments over the second time period, wherein therapy is notdelivered to the patient according to a detected posture state of thepatient during the first time period, and therapy is delivered to thepatient according to the detected posture state of the patient duringthe second time period.

In another example, the disclosure provides a system comprising aprocessor configured to acquire first patient data, generate baselinepatient information based at least in part on the first patient data,and compare the baseline patient information to patient informationgenerated based on second patient data, wherein the first patient datacomprises at least one of first posture state data indicative of aplurality of posture states of a patient during a first time period orfirst therapy adjustment data indicative of a plurality of patienttherapy adjustments made during the first time period, wherein thesecond patient data comprises at least one of second posture state dataindicative of a plurality of posture states of a patient during a secondtime period or second therapy adjustment data indicative of a pluralityof patient therapy adjustments over the second time period, whereintherapy is not delivered to the patient according to a detected posturestate of the patient during the first time period, and therapy isdelivered to the patient according to the detected posture state of thepatient during the second time period.

In another example, the disclosure provides a computer readable storagemedium having instructions that cause one or more processor to acquirefirst patient data, wherein the first patient data comprises at leastone of first posture state data indicative of a plurality of posturestates of a patient during a first time period or first therapyadjustment data indicative of a plurality of patient therapy adjustmentsmade during the first time period; generate baseline patient informationbased at least in part on the first patient data; and compare thebaseline patient information to patient information generated based onsecond patient data, wherein the second patient data comprises at leastone of second posture state data indicative of a plurality of posturestates of a patient during a second time period or second therapyadjustment data indicative of a plurality of patient therapy adjustmentsover the second time period, wherein therapy is not delivered to thepatient according to a detected posture state of the patient during thefirst time period, and therapy is delivered to the patient according tothe detected posture state of the patient during the second time period.

In another example, the disclosure provides a system comprising meansfor acquiring first patient data, wherein the first patient datacomprises at least one of first posture state data indicative of aplurality of posture states of a patient during a first time period orfirst therapy adjustment data indicative of a plurality of patienttherapy adjustments made during the first time period; means forgenerating baseline patient information based at least in part on thefirst patient data; and means for comparing the baseline patientinformation to patient information generated based on second patientdata, wherein the second patient data comprises at least one of secondposture state data indicative of a plurality of posture states of apatient during a second time period or second therapy adjustment dataindicative of a plurality of patient therapy adjustments over the secondtime period, wherein therapy is not delivered to the patient accordingto a detected posture state of the patient during the first time period,and therapy is delivered to the patient according to the detectedposture state of the patient during the second time period.

The details of one or more aspects of the disclosure are set forth inthe accompanying drawings and the description below. Other features,objects, and advantages will be apparent from the description anddrawings, and from the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A is a conceptual diagram illustrating an example implantablestimulation system including two implantable stimulation leads.

FIG. 1B is a conceptual diagram illustrating an example implantablestimulation system including three implantable stimulation leads.

FIG. 1C is a conceptual diagram illustrating an example implantable drugdelivery system including a delivery catheter.

FIG. 2 is a conceptual diagram illustrating an example patientprogrammer for programming stimulation therapy delivered by animplantable medical device.

FIG. 3 is a conceptual diagram illustrating an example clinicianprogrammer for programming stimulation therapy delivered by animplantable medical device.

FIGS. 4A and 4B are functional block diagrams illustrating variouscomponents of an example implantable electrical stimulator and anexample external sensing device, respectively.

FIG. 5 is a functional block diagram illustrating various components ofan example implantable drug pump.

FIG. 6 is a functional block diagram illustrating various components ofan example external programmer for an implantable medical device.

FIG. 7 is a block diagram illustrating an example system that includesan external device, such as a server, and one or more computing devicesthat are coupled to an implantable medical device and externalprogrammer shown in FIGS. 1A-1C via a network.

FIGS. 8A-8C are conceptual illustrations of example posture state spaceswithin which postures state reference data may define the posture stateof a patient.

FIG. 9 is a conceptual diagram illustrating an example user interface ofa patient programmer for delivering therapy information to the patient.

FIG. 10 is a conceptual diagram illustrating an example user interfaceof a patient programmer for delivering therapy information that includesposture information to the patient.

FIG. 11 is a flow diagram illustrating an example technique forgenerating baseline and posture-responsive patient information.

FIG. 12 is a plot illustrating an example timeline including multipletime periods during which patient posture state and/or therapyadjustments may be monitored to generate patient information.

FIG. 13 is a conceptual diagram illustrating an example user interfacepresenting a comparison of baseline proportional posture information toposture-responsive proportional posture information.

FIG. 14 is conceptual diagram illustrating an example user interfacepresenting a comparison of baseline proportional posture information toposture-responsive proportional posture information.

FIG. 15 is a conceptual diagram illustrating an example user interfacepresenting a comparison of baseline sleep quality information toposture-responsive sleep quality information.

FIG. 16 is a conceptual diagram illustrating an example user interfacepresenting a comparison of baseline therapy adjustment information toposture-responsive therapy adjustment information.

DETAILED DESCRIPTION

In some medical devices that deliver electrical stimulation therapy,therapeutic efficacy may change as the patient changes posture states.In general, a posture state may refer to a patient posture or acombination of patient posture and patient activity. For example, someposture states, such as upright, may be sub-categorized as upright andactive or upright and inactive. Other posture states, such as lying downposture states, may or may not have an activity component. Efficacy mayrefer, in general, to a combination of complete or partial alleviationof symptoms alone, or in combination with a degree of undesirable sideeffects.

Changes in posture state may cause changes in efficacy due to changes indistances between electrodes or other therapy delivery elements, e.g.,due to temporary migration of leads or catheters caused by forces orstresses associated with different postures, or from changes incompression of patient tissue in different posture states. Also, posturestate changes may present changes in symptoms or symptom levels, e.g.,pain level. To maintain therapeutic efficacy, it may be desirable toadjust therapy parameters based on different postures and/or activitiesengaged by the patient. A therapy system may adjust therapy by modifyingvalues for one or more therapy parameters, e.g., by specifyingadjustments to a specific therapy parameter or by selecting differenttherapy programs or groups of programs that define different sets oftherapy parameter values.

A change in efficacy due to changes in posture state may require thepatient to continually manage therapy by manually adjusting certaintherapy parameters, such as amplitude, pulse rate, or pulse width, orselecting different therapy programs to achieve more efficacious therapythroughout many different posture states. In some cases, a medicaldevice employs a posture state detector that detects the patient posturestate. The medical device adjusts therapy parameters in response todifferent posture states, which are determined with the posture statedetector. Therapy adjustments in response to different posture statesmay be fully automatic, semi-automatic in the sense that a user mayprovide approval of proposed changes, or user-directed in the sense thatthe patient may manually adjust therapy based on the posture stateindication.

In general, the disclosure describes medical devices, systems andtechniques related to the delivery of therapy to a patient by a medicaldevice. The therapy may include electrical stimulation therapy or othertherapies. A medical device may be configured to monitor posture stateof patient and/or patient therapy adjustments and, in some examples,deliver therapy to a patient according to the detected posture state ofthe patient. The delivery of therapy to a patient by a medical deviceaccording to the detected patient posture state may generally bereferred to as posture-responsive therapy, and may include detecting theposture state of a patient, e.g., via one or more posture sensors, andadjusting the value of one or more therapy parameters based on thedetected patient posture state.

A medical device may monitor the posture state of a patient over aperiod of time during which posture-responsive therapy is not deliveredto a patient. For example, during such a time period, a medical devicemay deliver therapy to a patient albeit on a non-posture responsivebasis, i.e., the therapy is not delivered according to the detectedpatient posture state. Alternatively, a patient may not receive therapyin general during the time period in which the patient posture state ismonitored by the medical device. The period of time may include a periodof time prior to that of period when a patient receivesposture-responsive therapy, a period of time after the termination ofposture-responsive therapy, or any combination thereof. Additionally oralternatively, a medical device may monitor the number of therapyadjustments made by a patient over a period of time during whichposture-responsive therapy is not delivered to a patient. For example,during such a time period, a medical device may deliver therapy to apatient albeit on a non-posture responsive basis, i.e., the therapy isnot delivered according to the detected patient posture state.

By monitoring the patient posture state and/or patient therapyadjustments, the medical device may gather patient data that includesone or more of posture state data indicative of the patient posturestate during the time period when the patient was not receivingposture-responsive therapy and therapy adjustment information indicativeof patient therapy adjustments made during the time period when thepatient was not receiving posture-responsive therapy. Using the patientdata gathered during that time period, baseline patient information maythen be generated. In some examples, the baseline patient informationmay include baseline postures state information, such as, e.g., baselineproportional posture information, baseline sleep quality information, orbaseline posture state transition information. Alternatively oradditionally, the baseline patient information may include baselinetherapy adjustment information, such as, e.g., the number of therapyadjustments made by patient over all or a portion of the time period.

The generated baseline patient information may then be compared topatient information that has been generated based on patient datagathered over a time period during which the patient receivedposture-responsive therapy from a medical device. In this manner, thebaseline patient information may used as a reference point to evaluateone or more aspects of the posture-responsive therapy. For example, amedical device may present such information to a user, such as, apatient or clinician, so the user may evaluate the efficacy of one ormore aspects of therapy in terms of the difference between patientposture state behavior and/or patient therapy adjustments beforedelivery of posture-responsive therapy versus a patient posture statebehavior and/or patient therapy adjustments during a time period inwhich posture-responsive therapy is delivered to the patient. In view ofthe comparison of the baseline patient information to the patientinformation corresponding to a posture-responsive time period, the usermay make an adjustment to one or more aspects of the posture-responsivetherapy. In other examples, a medical device may automatically orsemi-automatically adjust to one or more aspects of theposture-responsive therapy based on the comparison of the baselinepatient information to the patient information corresponding to aposture responsive time period.

Accordingly, the generation and use of baseline patient information asdescribed in this disclosure may provide a mechanism to evaluate theefficacy of posture-responsive therapy to a clinician or patient, and/oraid a clinician or IMD in adjusting therapy parameter values to improvetherapeutic efficacy. Symptoms caused by many different diseases,disorders or conditions, e.g., chronic pain, tremor, Parkinson'sdisease, epilepsy, urinary or fecal incontinence, sexual dysfunction,obesity, or gastroparesis, can affect the postures and activities inwhich the patient chooses to engage. By monitoring the patient'sposture, activity and/or therapy adjustments during a time period whenthe patient is not receiving posture-responsive therapy and comparing itto the patient's posture, activity and/or therapy adjustments during atime period when the patient is receiving posture-responsive therapy, auser, e.g., a clinician, may be able to objectively measure theinfluence that the delivery of posture-responsive therapy has had on apatient with respect to the patient's posture, activity, and/oroccurrences of therapy adjustments.

In some examples, a medical device coupled to a patient may be capableof monitoring the posture state of a patient. For example, animplantable medical device (IMD) implanted within the patient mayinclude a posture state module containing a posture state sensor capableof sensing the posture state of the patient. As another example, anexternal medical device that includes a posture state module containingposture state sensor capable of sensing the posture state of the patientmay be temporarily attached to a patient device to monitor the patient'sposture state. The external device may also be configured to deliverstimulation to a patient during a trial period or simply an externalmonitoring device affixed to a patient for the primary purpose ofmonitoring the patient's posture state. Furthermore, the IMD or externaldevice may be configured to monitor therapy adjustments made by apatient.

In each case, the IMD or external medical device may monitor the posturestate of a patient and/or patient therapy adjustments over a time periodduring which the patient is not receiving posture-responsive therapy.The posture state of patient may include a specific posture of thepatient and/or the specific activity conducted by the patient. After thepatient posture state is sensed or detected, the posture state may bestored within the memory of the IMD, external device, or other devicefor later retrieval and review. The IMD may store each different posturestate engaged by the patient, the posture duration of each posturestate, the transition between each posture state as the patient moves,or any other posture state data derived from the posture state sensor.Similarly, the IMD or other device may detect therapy adjustments madeby a patient, which may then by stored within the memory of thedetecting device or other device for later retrieval and review. In thismanner, the IMD or other device may store posture state data and/ortherapy adjustment data for retrieval to generate baseline patientinformation.

As described above, the baseline patient information may be compared topatient information based on patient data corresponding to a time periodin which posture-responsive therapy was delivered. The patient data mayinclude posture state data indicative of the posture state of thepatient during the posture-responsive therapy time period and/or therapyadjustment data indicative of therapy adjustments made by the patientduring the posture-responsive time period. The patient informationgenerated based on patient data from the time period in whichposture-responsive therapy was delivered to the patient may generally bereferred to as posture-responsive patient information. During theposture-responsive therapy time period, an IMD detects the posture stateof a patient and delivers therapy according to the detected patientposture state. Delivery of therapy according to the detected patientposture state may include adjusting the value of one or more therapyparameters based on the detected patient posture state. Furthermore,during the posture-responsive therapy time period, an IMD may receiveone or more therapy adjustments from a patient, e.g., to adjust one ormore parameters of the therapy being delivered based on the patientposture state.

FIG. 1A is a schematic diagram illustrating an implantable stimulationsystem 10 including a pair of implantable electrode arrays in the formof stimulation leads 16A and 16B. Although the techniques described inthis disclosure are generally applicable to a variety of medical devicesincluding external and implantable medical devices (IMDs), applicationof such techniques to IMDs and, more particularly, implantableelectrical stimulators such as neurostimulators will be described forpurposes of illustration. More particularly, the disclosure will referto an implantable SCS system for purposes of illustration, but withoutlimitation as to other types of medical devices.

As shown in FIG. 1A, system 10 includes an IMD 14, external sensingdevice 15, and external programmer 20 shown in conjunction with apatient 12, who is ordinarily a human patient. In the example of FIG.1A, IMD 14 is an implantable electrical stimulator that delivers SCS,e.g., for relief of chronic pain or other symptoms. Again, although FIG.1A shows an IMD, other examples may include an external stimulator,e.g., with percutaneously implanted leads. In some examples, theexternal stimulator may be configured to deliver stimulation therapy topatient 12 on a temporary basis. Stimulation energy is delivered fromIMD 14 to spinal cord 18 of patient 12 via one or more electrodes ofimplantable leads 16A and 16B (collectively “leads 16”). In someapplications, such as spinal cord stimulation (SCS) to treat chronicpain, the adjacent implantable leads 16 may have longitudinal axes thatare substantially parallel to one another.

Although FIG. 1A is directed to SCS therapy, system 10 may alternativelybe directed to any other condition that may benefit from stimulationtherapy. For example, system 10 may be used to treat tremor, Parkinson'sdisease, epilepsy, urinary or fecal incontinence, sexual dysfunction,obesity, gastroparesis, or psychiatric disorders (e.g., depression,mania, obsessive compulsive disorder, anxiety disorders, and the like).In this manner, system 10 may be configured to provide therapy takingthe form of deep brain stimulation (DBS), pelvic floor stimulation,gastric stimulation, or any other stimulation therapy.

Each of leads 16 may include electrodes (not shown in FIG. 1), and theparameters for a program that controls delivery of stimulation therapyby IMD 14 may include information identifying which electrodes have beenselected for delivery of stimulation according to a stimulation program,the polarities of the selected electrodes, i.e., the electrodeconfiguration for the program, and voltage or current amplitude, pulserate, and pulse width of stimulation delivered by the electrodes.Delivery of stimulation pulses will be described for purposes ofillustration. However, stimulation may be delivered in other forms, suchas continuous waveforms. Programs that control delivery of othertherapies by IMD 12 may include other parameters, e.g., such as dosageamount, rate, or the like for drug delivery.

In the example of FIG. 1A, leads 16 carry one or more electrodes thatare placed adjacent to the target tissue of the spinal cord. One or moreelectrodes may be disposed at a distal tip of a lead 16 and/or at otherpositions at intermediate points along the lead. Electrodes of leads 16transfer electrical stimulation generated by IMD 14 to tissue of patient12. The electrodes may be electrode pads on a paddle lead, circular(e.g., ring) electrodes surrounding the body of leads 16, conformableelectrodes, cuff electrodes, segmented electrodes, or any other type ofelectrodes capable of forming unipolar, bipolar or multipolar electrodeconfigurations for therapy. In general, ring electrodes arranged atdifferent axial positions at the distal ends of leads 16 will bedescribed for purposes of illustration.

Leads 16 may be implanted within patient 12 and directly or indirectly(e.g., via a lead extension) coupled to IMD 14. Alternatively, asmentioned above, leads 16 may be implanted and coupled to an externalstimulator, e.g., through a percutaneous port. In some cases, anexternal stimulator is a trial or screening stimulation that used on atemporary basis to evaluate potential efficacy to aid in considerationof chronic implantation for a patient. In additional examples, IMD 14may be a leadless stimulator with one or more arrays of electrodesarranged on a housing of the stimulator rather than leads that extendfrom the housing.

IMD 14 delivers electrical stimulation therapy to patient 12 viaselected combinations of electrodes carried by one or both of leads 16.The target tissue for the electrical stimulation therapy may be anytissue affected by electrical stimulation energy, which may be in theform of electrical stimulation pulses or waveforms. In some examples,the target tissue includes nerves, smooth muscle, and skeletal muscle.In the example illustrated by FIG. 1A, the target tissue is tissueproximate spinal cord 18, such as within an intrathecal space orepidural space of spinal cord 18, or, in some examples, adjacent nervesthat branch off of spinal cord 18. Leads 16 may be introduced intospinal cord 18 in via any suitable region, such as the thoracic,cervical or lumbar regions. Stimulation of spinal cord 18 may, forexample, prevent pain signals from traveling through the spinal cord andto the brain of the patient. Patient 12 may perceive the interruption ofpain signals as a reduction in pain and, therefore, efficacious therapyresults.

The deployment of electrodes via leads 16 is described for purposes ofillustration, but arrays of electrodes may be deployed in differentways. For example, a housing associated with a leadless stimulator maycarry arrays of electrodes, e.g., rows and/or columns (or otherpatterns). Such electrodes may be arranged as surface electrodes, ringelectrodes, or protrusions. As a further alternative, electrode arraysmay be formed by rows and/or columns of electrodes on one or more paddleleads. In some examples, electrode arrays may include electrodesegments, which may be arranged at respective positions around aperiphery of a lead, e.g., arranged in the form of one or more segmentedrings around a circumference of a cylindrical lead.

In the example of FIG. 1A, stimulation energy is delivered by IMD 14 tothe spinal cord 18 to reduce the amount of pain perceived by patient 12.As described above, IMD 14 may be used with a variety of differenttherapies, such as peripheral nerve stimulation (PNS), peripheral nervefield stimulation (PNFS), DBS, cortical stimulation (CS), pelvic floorstimulation, gastric stimulation, and the like. The electricalstimulation delivered by IMD 14 may take the form of electricalstimulation pulses or continuous stimulation waveforms, and may becharacterized by controlled voltage levels or controlled current levels,as well as pulse width and pulse rate in the case of stimulation pulses.

In some examples, IMD 14 generates and delivers stimulation therapyaccording to one or more programs. A program defines values for one ormore parameters that define an aspect of the therapy delivered by IMD 14according to that program. For example, a program that controls deliveryof stimulation by IMD 14 in the form of pulses may define a voltage orcurrent pulse amplitude, a pulse width, a pulse rate, for stimulationpulses delivered by IMD 14 according to that program. Moreover, therapymay be delivered according to multiple programs, wherein multipleprograms are contained within each of a plurality of groups.

Each program group may support an alternative therapy selectable bypatient 12, and IMD 14 may deliver therapy according to the multipleprograms. IMD 14 may rotate through the multiple programs of the groupwhen delivering stimulation such that numerous conditions of patient 12are treated. As an illustration, in some cases, stimulation pulsesformulated according to parameters defined by different programs may bedelivered on a time-interleaved basis. For example, a group may includea program directed to leg pain, a program directed to lower back pain,and a program directed to abdomen pain. In this manner, IMD 14 may treatdifferent symptoms substantially simultaneously.

During use of IMD 14 to treat patient 12, movement of patient 12 amongdifferent posture states may affect the ability of IMD 14 to deliverconsistent efficacious therapy. For example, posture state changes maypresent changes in symptoms or symptom levels, e.g., pain level. Asanother example, a patient posture state may affect the relativelocation between the electrodes of leads 16 and a target therapy site.For example, leads 16 may migrate toward IMD 14 when patient 12 bends atthe waist, resulting in displacement of electrodes relative to thetarget stimulation site and possible disruption in delivery of effectivetherapy. Stimulation energy transferred to target tissue may be reduceddue to electrode migration, which may reduce therapeutic efficacy interms of relief of symptoms (e.g., pain) or an increase in undesirableside effects.

As another example of how posture state may affect the relative locationbetween the electrodes of leads 16 and a target therapy site, leads 16may be compressed towards spinal cord 18 when patient 12 lies down. Suchcompression may cause an increase in the amount of stimulation energytransferred to the target tissue. An increase in stimulation energytransferred to the target stimulation site may cause unusual sensationsor an otherwise undesirable intensity of therapy, which may both beconsidered undesirable side effects that undermine overall efficacy.Thus, in some examples, the amplitude of stimulation therapy may need tobe decreased when patient 12 is lying down to avoid causing patient 12additional pain or unusual sensations resulting from the increasedcompression near electrodes of leads 16. The additional pain or unusualsensations may be considered undesirable side effects that undermineoverall efficacy.

IMD 14 includes a posture state module that detects the patient posturestate. When posture-responsive therapy is activated, IMD 14automatically adjusts stimulation according to the detected posturestate. The patient posture and activity level can, but need not includean activity component. Example posture states may include “Upright,”“Upright and Active,” “Lying Down,” and so forth. IMD 14 includes aposture responsive therapy mode that, when activated, results inadjustment of one or more stimulation parameter values based on adetected posture state. The posture responsive therapy may help mitigatechanges in the efficacy of therapy attributable to patient posturechanges. For example, the posture state module may include one or moreaccelerometers that detect when patient 12 occupies a posture state forwhich it is appropriate to decrease the stimulation amplitude, e.g.,when patient 12 lies down. IMD 14 may automatically reduce stimulationamplitude upon detecting patient 12 is lying down, thereby eliminatingthe need for patient 12 to manually adjust the therapy, which may becumbersome. In addition, automatic adjustment of stimulation parametersbased on a detected patient posture may also provide more responsivetherapy because IMD 14 may detect a change in patient posture and modifytherapy parameters faster than patient 12 may be able to manually modifythe therapy parameter values.

Many other examples of reduced efficacy due to increase coupling ordecreased coupling of stimulation energy to target tissue may occur dueto changes in posture and/or activity level associated with patientposture state. To avoid or reduce possible disruptions in effectivetherapy due to posture state changes, IMD 14 includes a posture statemodule that detects the posture state of patient 12 and causes the IMD14 to automatically adjust stimulation according to the detected posturestate. For example, a posture state module may include a posture statesensor such as an accelerometer that detects when patient 12 lies down,stands up, or otherwise changes posture.

In response to a posture state indication by the posture state module,IMD 14 may change program group, program, stimulation amplitude, pulsewidth, pulse rate, and/or one or more other parameters, groups orprograms to maintain therapeutic efficacy. When a patient lies down, forexample, IMD 14 may automatically reduce stimulation amplitude so thatpatient 12 do not need to reduce stimulation amplitude manually. In somecases, IMD 14 may communicate with external programmer 20 to present aproposed change in stimulation in response to a posture state change,and receive approval or rejection of the change from a user, such aspatient 12 or a clinician, before automatically applying the therapychange. In some examples, posture state detection may also be used toprovide notifications, such as providing notification via a wirelesslink to a care giver that a patient has potentially experienced a fall.

IMD 14 may also deliver therapy to patient 12 on a non-postureresponsive basis. In general, when posture-responsive therapy is notactivated for IMD 14, IMD 14 may deliver therapy to patient 12 butwithout regard to the detected posture state of patient 12. During thattime, for example, while IMD 14 may deliver stimulation therapy topatient 12 according to one or more therapy groups or programs, IMD 14does not change program group, program, stimulation amplitude, pulsewidth, pulse rate, and/or one or more other parameters, groups orprograms in response to the detected posture state of patient 12 tomaintain therapeutic efficacy. For example, IMD 14 may not detect theposture state of patient 12 when posture-responsive therapy is notactivated or, alternatively, IMD 14 may detect the posture state ofpatient 12 but not adjust the therapy according to the detected patientpostures state.

As shown in FIG. 1, system 10 also includes external sensing device 15.Similar to that of IMD 14, external sensing device may include a posturestate module capable of detecting the posture state of patient 12.Accordingly, in some examples, system 10 may include external sensingdevice 15 in addition to IMD 14, to monitor the posture state of patient12. In some examples, external sensing device 15 may be configured to betemporarily affixed to patient 12, e.g., in the form of an adhesivepatch similar to that of an adhesive bandage, such that the posturestate of patient 12 can be monitored without requiring implant IMD 14 tobe implanted within patient 12.

External sensing device 15 may be utilized to monitor the posture stateof patient 12 during a time period in which patient 12 is not receivingposture-responsive therapy from IMD 14. For example, External sensingdevice 15 may be particularly suited to monitor the posture state ofpatient 12 during time period in which IMD 14 has not yet been implantedin patient 12 and, therefore, at time in which IMD 14 is not able tomonitor the posture state of patient 12. However, in some examples,external sensing device may also monitor the posture state of patient 12after IMD 14 has been implanted in patient 12. For example, externalsensing device 15 may monitor the posture state of patient 12 during atime period in which patient 12 is receiving posture-responsive therapyfrom IMD 14, or even a time period during which patient 12 is notreceiving posture-response therapy but after IMD 14 has been implantedin patient 12.

Referring still to FIG. 1A, a user, such as a clinician or patient 12,may interact with a user interface of external programmer 20 to programIMD 14. Programming of IMD 14 may refer generally to the generation andtransfer of commands, programs, or other information to control theoperation of IMD 14. For example, external programmer 20 may transmitprograms, parameter adjustments, program selections, group selections,or other information to control the operation of IMD 14, e.g., bywireless telemetry. As one example, external programmer 20 may transmitparameter adjustments to support therapy modifications relating tochanges in the posture state of patient 12. As another example, a usermay select programs or program groups. Again, a program may becharacterized by an electrode combination, electrode polarities, voltageor current amplitude, pulse width, pulse rate, and/or duration. A groupmay be characterized by multiple programs that are deliveredsimultaneously or on an interleaved or rotating basis.

In some cases, external programmer 20 may be characterized as aphysician or clinician programmer if it is primarily intended for use bya physician or clinician. In other cases, external programmer 20 may becharacterized as a patient programmer if it is primarily intended foruse by a patient. A patient programmer is generally accessible topatient 12 and, in many cases, may be a portable device that mayaccompany the patient throughout the patient's daily routine. Ingeneral, a physician or clinician programmer may support selection andgeneration of programs by a clinician for use by stimulator 14, whereasa patient programmer may support adjustment and selection of suchprograms by a patient during ordinary use.

As will be described in greater detail below, IMD 14, external device15, and/or any other suitable device may monitor the posture state ofpatient 12 and/or therapy adjustments made by patient 12 during a timeperiod in which IMD 14 does not deliver posture-responsive therapy topatient 12. As referred to herein, patient data may include at least oneof posture state data indicative of the plurality of posture states ofpatient during a respective time period and therapy adjustment dateindicative of patient therapy adjustments during a respective timeperiod. Using the patient data from the time period whenposture-responsive therapy was not delivered to patient 12, IMD 14,external programmer 20 or any other suitable device may generatebaseline patient information for patient 12. The baseline patientinformation may then be compared to posture-responsive patientinformation, i.e., patient information generated based on patient dataduring to a time period in which IMD 14 delivered posture-responsivetherapy to patient 12. The comparison of the baseline patientinformation to the posture-responsive patient information may allow auser, such as a clinician or patient, or IMD 14 to evaluate the efficacyof the posture-responsive therapy delivered to patient 12 via IMD 14.

External programmer 20 may present one or more aspects of the comparisonof baseline patient information to posture-responsive patientinformation to a user. In some examples, external programmer 20 acquirespatient data indicative of patient postures state and/or patient therapyadjustments during a time period in which patient 12 was not receivingposture-responsive therapy from IMD 14 or external sensor 15, and thengenerates baseline patient information based on the acquired patientdata. In other examples, IMD 14 or external sensor 15 acquires thepatient data and generates the baseline patient information based on thepatient data, which is then communicated to external programmer 20 forpresentation to a user. The baseline patient information may includebaseline sleep quality information, baseline proportional postureinformation, therapy adjustment information, or other information thatobjectively indicates how patient 12 has been moving or adjustingtherapy during the time period that IMD 14 is not delivering postureresponsive therapy to patient 12. External programmer 20 may present oneor more aspects of the comparison of baseline patient information andthe posture-responsive patient information graphically as a chart orgraph, numerically, or some combination thereof.

IMD 14 may be constructed with a biocompatible housing, such as titaniumor stainless steel, or a polymeric material such as silicone orpolyurethane, and surgically implanted at a site in patient 18 near thepelvis. IMD 14 may also be implanted in patient 12 at a locationminimally noticeable to patient 12. Alternatively, IMD 14 may beexternal with percutaneously implanted leads. For SCS, IMD 14 may belocated in the lower abdomen, lower back, upper buttocks, or otherlocation to secure IMD 14. Leads 16 may be tunneled from IMD 14 throughtissue to reach the target tissue adjacent to spinal cord 18 forstimulation delivery.

FIG. 1B is a conceptual diagram illustrating an implantable stimulationsystem 22 including three implantable stimulation leads 16A, 16B, 16C(collectively leads 16). System 22 generally conforms to system 10 ofFIG. 1A, but includes a third lead. Accordingly, IMD 14 may deliverstimulation via combinations of electrodes carried by all three leads16, or a subset of the three leads. The third lead, e.g., lead 16C, mayinclude a greater number of electrodes than leads 16A and 16B and bepositioned between leads 16A and 16B or on one side of either lead 16Aor 16B. The number and configuration of leads 16 may be stored withinexternal programmer 20 to allow programmer 20 to appropriately programstimulation therapy or assist in the programming of stimulation therapy.

In some examples, leads 16A and 16B each include four electrodes, whilelead 16C includes eight or sixteen electrodes, thereby forming aso-called 4-8-4 or 4-16-4 lead configuration. Other lead configurations,such as 8-16-8, 8-4-8, 16-8-16, 16-4-16, are possible, whereby thenumber in the configuration indication refers to the number ofelectrodes in a particular electrode column, which may be defined by alead 16A-16C. In some cases, electrodes on lead 16C may be smaller insize and/or closer together than the electrodes of leads 16A or 16B.Movement of lead 16C due to changing activities or postures of patient12 may, in some instances, more severely affect stimulation efficacythan movement of leads 16A or 16B. Patient 12 may further benefit fromthe ability of IMD 14 to detect posture states and associated changesand automatically adjust stimulation therapy to maintain therapyefficacy in a three lead system 22.

FIG. 1C is a conceptual diagram illustrating an implantable drugdelivery system 24 including one delivery catheter 28 coupled to IMD 26.As shown in the example of FIG. 1C, drug delivery system 24 issubstantially similar to systems 10 and 22. However, drug deliverysystem 24 performs the similar therapy functions via delivery of one ormore therapeutic agents instead of electrical stimulation therapy. IMD26 functions as a drug pump in the example of FIG. 1C, and IMD 26communicates with external programmer 20 to initialize therapy or modifytherapy during operation. In addition, IMD 26 may be refillable to allowchronic drug delivery.

A fluid delivery port of catheter 28 may be positioned within anintrathecal space or epidural space of spinal cord 18, or, in someexamples, adjacent nerves that branch off of spinal cord 18. AlthoughIMD 26 is shown as coupled to only one catheter 28 positioned alongspinal cord 18, additional catheters may also be coupled to IMD 26.Multiple catheters may deliver drugs or other therapeutic agents to thesame anatomical location or the same tissue or organ. Alternatively,each catheter may deliver therapy to different tissues within patient 12for the purpose of treating multiple symptoms or conditions. In someexamples, IMD 26 may be an external device that includes a percutaneouscatheter that to deliver a therapeutic agent to patient 12, e.g., in thesame manner as catheter 28. Alternatively, the percutaneous catheter canbe coupled to catheter 28, e.g., via a fluid coupler. In other examples,IMD 26 may include both electrical stimulation capabilities as describedin IMD 14 (FIG. 1A) and drug delivery therapy.

IMD 26 may also operate using parameters that define the method of drugdelivery. IMD 26 may include programs, or groups of programs, thatdefine different delivery methods for patient 14. For example, a programthat controls delivery of a drug or other therapeutic agent may includea titration rate or information controlling the timing of bolusdeliveries. Patient 14 may use external programmer 20 to adjust theprograms or groups of programs to regulate the therapy delivery.

Similar to IMD 14, IMD 26 includes a posture state module that monitorsthe patient 12 posture state and adjusts therapy accordingly when IMD 26is activated for posture-responsive therapy. For example, the posturestate module may indicate that patient 12 transitions from lying down tostanding up. IMD 26 may automatically increase the rate of drugdelivered to patient 12 in the standing position if patient 12 hasindicated that pain increased when standing. This automated adjustmentto therapy based upon posture state may be activated for all or only aportion of the programs used by IMD 26 to deliver therapy.

FIG. 2 is a conceptual diagram illustrating an example patientprogrammer 30 for programming stimulation therapy delivered by an IMD.Patient programmer 30 is an example of external programmer 20illustrated in FIGS. 1A, 1B and 1C and may be used with either IMD 14 orIMD 26. In alternative examples, patient programmer 30 may be used withan external medical device. As shown in FIG. 2, patient programmer 30provides a user interface (not shown) for a user, such as patient 12, tomanage and program stimulation therapy. Patient programmer 30 may beused to present a comparison of baseline patient information andposture-responsive patient information to patient 12. Patient programmer30 is protected by housing 32, which encloses circuitry necessary forpatient programmer 30 to operate. Patient 12 may use programmer 30 tomake adjustments to therapy being delivered by IMD 14.

Patient programmer 30 also includes display 36, power button 38,increase button 52, decrease button 50, sync button 58, stimulation ONbutton 54, and stimulation OFF button 56. Cover 34 protects display 36from being damaged during use of patient programmer 30. Patientprogrammer 30 also includes control pad 40 which allows a user tonavigate through items displayed on display 36 in the direction ofarrows 42, 44, 46, and 48. In some examples, the buttons and pad 40 maytake the form of soft keys (e.g., with functions and contexts indicatedon display 36), with functionality that may change, for example, basedon current programming operation or user preference. In alternativeexamples, display 36 is a touch screen with which patient 12 maydirectly interact without the use of control pad 40. A touch screendisplay may eliminate the use of buttons, such as increase button 52 anddecrease button 50, although buttons may be used in addition to a touchscreen display.

In the illustrated example, patient programmer 30 is a hand held device.Patient programmer 30 may accompany patient 12 throughout a dailyroutine. In some cases, patient programmer 30 may be used by a clinicianwhen patient 12 visits the clinician in a hospital or clinic. In otherexamples, patient programmer 30 may be a clinician programmer thatremains with the clinician or in the clinic and is used by the clinicianand/or patient 12 when the patient is in the clinic. In the case of aclinician programmer, small size and portability may be less important.Accordingly, a clinician programmer may be sized larger than a patientprogrammer, and it may provide a larger screen for more full-featuredprogramming.

Housing 32 may be constructed of a polymer, metal alloy, composite, orcombination material suitable to protect and contain components ofpatient programmer 30. In addition, housing 32 may be partially orcompletely sealed such that fluids, gases, or other elements may notpenetrate the housing and affect components therein. Power button 38 mayturn patient programmer 30 ON or OFF as desired by patient 12. Patient12 may control the illumination level, or backlight level, of display 36by using control pad 40 to navigate through the user interface andincrease or decrease the illumination level with decrease and increasebuttons 50 and 52.

In some examples, illumination may be controlled by a knob that rotatesclockwise and counter-clockwise to control patient programmer 30operational status and display 36 illumination. Patient programmer 30may be prevented from turning OFF during telemetry with IMD 14 oranother device to prevent the loss of transmitted data or the stallingof normal operation. Alternatively, patient programmer 30 and IMD 14 mayinclude instructions that handle possible unplanned telemetryinterruption, such as battery failure or inadvertent device shutdown.

Display 36 may include any one or more of a liquid crystal display(LCD), dot matrix display, organic light-emitting diode (OLED) display,touch screen, or similar monochrome or color display capable ofproviding visible information to patient 12. Display 36 may provide auser interface regarding current stimulation therapy, posture stateinformation, provide a user interface for receiving feedback ormedication input from patient 12, display an active group of stimulationprograms, and display operational status of patient programmer 30 orIMDs 14 or 26. For example, patient programmer 30 may provide ascrollable list of groups, and a scrollable list of programs within eachgroup, via display 36. In addition, display may present a visibleposture state indication.

Patient 12 or another user may interact with control pad 40 to navigatethrough items displayed on display 36. Patient 12 may press control pad40 on any of arrows 42, 44, 46, and 48 in order to move between itemspresented on display 36 or move to another screen not currently shown onthe display. In some examples, pressing the middle of control pad 40selects any items highlighted in display 36. In other examples, scrollbars, a scroll wheel, individual buttons, or a joystick may perform thecomplete or partial functions of control pad 40. In alternativeexamples, control pad 40 may be a touch pad that allows patient 12 tomove a cursor within the user interface displayed on display 36 tomanage therapy.

Decrease button 50 and increase button 52 provide an input mechanism forpatient 12. In general, activation of decrease button 50 (e.g., bypressing button 50) decreases the value of a highlighted stimulationparameter every time the decrease button is pressed. In contrast,activation of increase button 52 increases the value of a highlightedstimulation parameter one step every time the increase button ispressed. While buttons 50 and 52 may be used to control the value of anystimulation parameter, buttons 50 and 52 may also control patientfeedback input. When either button 50 or 52 is selected, patientprogrammer 30 may initialize communication with IMD 14 or 26 to changetherapy accordingly.

When depressed by patient 12, stimulation ON button 54 directsprogrammer 30 to generate a command for communication to IMD 14, wherethe command instructs IMD 14 to turn on stimulation therapy. StimulationOFF button 56 turns off stimulation therapy when depressed by patient12. Sync button 58 forces patient programmer 30 to communicate with IMD14. When patient 12 enters an automatic posture response screen of theuser interface, pressing sync button 58 turns on the automatic postureresponse to allow IMD 14 to automatically change therapy according tothe posture state of patient 12. Pressing sync button 58 again, when theautomatic posture response screen is displayed, turns off the automaticposture response. In the example of FIG. 2, patient 12 may use controlpad 40 to adjust the volume, contrast, illumination, time, andmeasurement units of patient programmer 30.

In some examples, buttons 54 and 56 may be configured to performoperational functions related to stimulation therapy or the use ofpatient programmer 30. For example, buttons 54 and 56 may control thevolume of audible sounds produced by programmer 20, wherein button 54increases the volume and button 56 decreases the volume. Button 58 maybe pressed to enter an operational menu that allows patient 12 toconfigure the user interface of patient programmer 30 to the desires ofpatient 12. For example, patient 12 may be able to select a language,backlight delay time, display brightness and contrast, or other similaroptions. In alternative examples, buttons 50 and 52 may control alloperational and selection functions, such as those related to audiovolume or stimulation therapy.

Patient programmer 30 may take other shapes or sizes not describedherein. For example, patient programmer 30 may take the form of aclam-shell shape, similar to some cellular phone designs. When patientprogrammer 30 is closed, some or all elements of the user interface maybe protected within the programmer. When patient programmer 30 isopened, one side of the programmer may contain a display while the otherside may contain input mechanisms. In any shape, patient programmer 30may be capable of performing the requirements described herein.Alternative examples of patient programmer 30 may include other inputmechanisms such as a keypad, microphone, camera lens, or any other mediainput that allows the user to interact with the user interface providedby patient programmer 30.

In alternative examples, the buttons of patient programmer 30 mayperform different functions than the functions provided in FIG. 2 and/ormay have a different arrangement. In addition, other examples of patientprogrammer 30 may include different button layouts or different numbersof buttons. For example, patient programmer 30 may even include a singletouch screen that incorporates all user interface functionality with alimited set of buttons or no other buttons.

FIG. 3 is a conceptual diagram illustrating an example clinicianprogrammer 60 for programming stimulation therapy delivered by an IMD.Clinician programmer 60 is an example of external programmer 20illustrated in FIGS. 1A, 1B and 1C and may be used with either IMD 14 orIMD 26. In alternative examples, clinician programmer 60 may be usedwith an external medical device. As shown in FIG. 3, clinicianprogrammer 60 provides a user interface (not shown) for a user, such asa clinician, physician, technician, or nurse, to manage and programstimulation therapy. In addition, clinician programmer 60 may be used topresent one or more aspects of the comparison between baseline patientinformation and posture-responsive patient information to a clinician.This information may allow a clinician to evaluate the efficacy ofposture-responsive therapy to patient 12, as well as monitor patientprogress relative to the baseline patient information. Clinicianprogrammer 60 is protected by housing 62, which encloses circuitrynecessary for clinician programmer 60 to operate.

Clinician programmer 60 is used by the clinician or other user to modifyand review therapy to patient 12. The clinician may define each therapyparameter value for each of the programs that define stimulationtherapy. The therapy parameters, such as amplitude, may be definedspecifically for each of the posture states that patient 12 will beengaged in during therapy. In addition, the clinician may use clinicianprogrammer 60 to define each posture state of patient 12 by using theposture cones described herein or some other technique for associatingposture state sensor output to the posture state of patient 12.

Clinician programmer 60 includes display 64 and power button 66. In theexample of FIG. 3, display 64 is a touch screen that accepts user inputvia touching certain areas within display 64. The user may use stylus 68to touch display 64 and select virtual buttons, sliders, keypads, dials,or other such representations presented by the user interface shown bydisplay 64. In some examples, the user may be able to touch display 64with a finger, pen, or any other pointing device. In alternativeexamples, clinician programmer 60 may include one or more buttons,keypads, control pads, touch pads, or other devices that accept userinput, similar to patient programmer 30.

In the illustrated example, clinician programmer 60 is a hand helddevice. Clinician programmer 60 may be used within the clinic or onin-house patient calls. Clinician programmer 60 may be used tocommunicate with multiple IMDs 14 and 26 within different patients. Inthis manner, clinician programmer 60 may be capable of communicatingwith many different devices and retain patient data separate for otherpatient data. In some examples, clinician programmer 60 may be a largerdevice that may be less portable, such as a notebook computer,workstation, or even a remote computer that communicates with IMD 14 or26 via a remote telemetry device.

Most, if not all, of clinician programmer 60 functions may be completedvia the touch screen of display 64. The user may program stimulationtherapy (e.g., selecting stimulation parameter values), modify programsor groups, retrieve stored therapy data, retrieve patient informationfrom an IMD or another device, define posture states and other activityinformation, change the contrast and backlighting of display 64, or anyother therapy related function. In addition, clinician programmer 60 maybe capable of communicating with a networked server in order to send orreceive an email or other message, retrieve programming instructions,access a help guide, send an error message, or perform any otherfunction that may be beneficial to prompt therapy.

Clinician programmer 60 may also allow the clinician to objectivelyevaluate the posture states of patient 12 during one or more time periodor patient therapy adjustments by monitoring the posture states ofpatient 12 during the one or more time periods and/or patient therapyadjustments made during the one or more time periods. The posture andactivity of patient 12 and patient therapy adjustments may be stored inIMD 14 as patient data and may be presented by clinician programmer 60in the form of baseline and posture-responsive patient information. Thepatient information may be sleep quality information, proportionalposture information, posture state adjustment information, patienttherapy adjustment information or other information that includesobjective data related to the frequency and duration of the posturestates occupied by patient 12 and/or frequency and number of patienttherapy adjustments. This information may be presented in an organizedgraphical and/or numerical manner for quick reference by the clinician.

In some examples, clinician programmer 60 may not store any of theposture state data used to generate the baseline and posture-responsivepatient information. Each time that the clinician desires to view theobjective information related to the posture states and/or therapyadjustments, clinician programmer 60 may need to acquire all or some ofthe patient data from IMD 14 and/or external sensing device 15. In otherexamples, clinician programmer 60 may store patient data from IMD 14and/or external sensing device 15 each time that clinician programmer 60communicates with IMD 14. In this manner, clinician programmer 60 mayonly need to acquire the patient data stored in IMD 14 and/or externalsensing device 15 since the previous communication with IMD 14 and/orexternal sensing device 15. Of course, clinician programmer 60 may notrequire all patient data stored by IMD 14 and/or external sensing device15. In some embodiments, only the patient data stored during desiredtime intervals, or relating to particular patient information, may beused to generate the baseline and posture-responsive patientinformation. In some cases, IMD 14 and/or external sensing device 15 maygenerate the patient information based on the patient data, and thencommunicate the generated patient information to programmer 60 forpresentation to a user in one form or another.

Housing 62 may be constructed of a polymer, metal alloy, composite, orcombination material suitable to protect and contain components ofclinician programmer 60. In addition, housing 62 may be partially orcompletely sealed such that fluids, gases, or other elements may notpenetrate the housing and affect components therein. Power button 66 mayturn clinician programmer 60 ON or OFF as desired by the user. Clinicianprogrammer 60 may require a password, biometric input, or other securitymeasure to be entered and accepted before the user can use clinicianprogrammer 60.

Clinician programmer 60 may take other shapes or sizes not describedherein. For example, clinician programmer 60 may take the form of aclam-shell shape, similar to some cellular phone designs. When clinicianprogrammer 60 is closed, at least a portion of display 64 is protectedwithin housing 62. When clinician programmer 60 is opened, one side ofthe programmer may contain a display while the other side may containinput mechanisms. In any shape, clinician programmer 60 may be capableof performing the requirements described herein.

FIG. 4A is a functional block diagram illustrating various components ofan IMD 14. In the example of FIG. 4A, IMD 14 includes a processor 80,memory 82, stimulation generator 84, posture state module 86, telemetrycircuit 88, and power source 90. The stimulation generator 84 forms atherapy delivery module.

Memory 82 may include any volatile, non-volatile, magnetic, optical, orelectrical media, such as a random access memory (RAM), read-only memory(ROM), non-volatile RAM (NVRAM), electrically-erasable programmable ROM(EEPROM), flash memory, or any other digital media. Memory 82 may storeinstructions for execution by processor 80, stimulation therapy data,posture state information (e.g., posture state definitions, informationassociating posture states with therapy programs, and the like), posturestate indications, and any other information regarding therapy orpatient 12. Therapy information may be recorded for long-term storageand retrieval by a user, and the therapy information may include anydata created by or stored in IMD 14. Memory 82 may include separatememories for storing instructions, posture state information, programhistories, and any other data that may benefit from separate physicalmemory modules.

As shown in FIG. 4A, memory 82 may store patient data 83 that isindicative of posture state of patient 12 and/or patient therapyadjustments. For example, patient data 83 may include informationregarding the posture state of patient 12 detected via posture module86. In some examples, patient data 83 may include raw or filteredposture sensor signal data that may later be analyzed (e.g., byprogrammers 30, 60) using one or more posture state detectiontechniques, such as, e.g., one or more of the techniques described belowwith regard to FIGS. 8A-8C, to determine the posture state of patient 12indicated by the posture sensor signal data. As another example, patientdata 83 may include information regarding patient therapy adjustments.

Patient data 83 may also include information that may be used todifferentiate between whether specific patient data corresponds to atime period when IMD 14 delivered posture-responsive stimulation topatient 12, or a time period when patient was not receiving postureresponsive therapy from IMD 14. For example, patient data 83 may includea general indication of whether or not IMD 14 was in posture-responsivetherapy mode when the patient data was sensed. Additionally oralternatively, patient data 83 may include a particular time stampindicating the time that posture sensor data was sensed or posture statewas detected, or when a patient therapy adjustment was received. Thistime information may be correlated with one or more therapy records todetermine whether IMD 14 was delivering posture-responsive therapyactive at the time. The time information may also be useful forgenerating and comparison of the baseline patient information andposture-responsive patient information.

Processor 80 controls stimulation generator 84 to deliver electricalstimulation via electrode combinations formed by electrodes in one ormore electrode arrays. For example, stimulation generator 84 may deliverelectrical stimulation therapy via electrodes on one or more leads 16,e.g., as stimulation pulses or continuous waveforms. Componentsdescribed as processors within IMD 14, external programmer 20 or anyother device described in this disclosure may each comprise one or moreprocessors, such as one or more microprocessors, digital signalprocessors (DSPs), application specific integrated circuits (ASICs),field programmable gate arrays (FPGAs), programmable logic circuitry, orthe like, either alone or in any suitable combination. The functionsattributed to processors described herein may be embodied as software,firmware, hardware, or any combination thereof.

Stimulation generator 84 may include stimulation generation circuitry togenerate stimulation pulses or continuous waveforms and, in someexamples, switching circuitry to switch the stimulation across differentelectrode combinations, e.g., in response to control by processor 80. Inparticular, processor 80 may control the switching circuitry on aselective basis to cause stimulation generator 84 to deliver electricalstimulation to selected electrode combinations and to shift theelectrical stimulation to different electrode combinations in a firstdirection or a second direction when the therapy must be delivered to adifferent location within patient 12. In other examples, stimulationgenerator 84 may include multiple current sources to drive more than oneelectrode combination at one time. In this case, stimulation generator84 may decrease current to the first electrode combination andsimultaneously increase current to the second electrode combination toshift the stimulation therapy.

An electrode configuration, e.g., electrode combination and associatedelectrode polarities, may be represented by a data stored in a memorylocation, e.g., in memory 82, of IMD 14. Processor 80 may access thememory location to determine the electrode combination and controlstimulation generator 84 to deliver electrical stimulation via theindicated electrode combination. To adjust electrode combinations,amplitudes, pulse rates, or pulse widths, processor 80 may commandstimulation generator 84 to make the appropriate changes to therapyaccording to instructions within memory 82 and rewrite the memorylocation to indicate the changed therapy. In other examples, rather thanrewriting a single memory location, processor 80 may make use of two ormore memory locations.

When activating stimulation, processor 80 may access not only the memorylocation specifying the electrode combination but also other memorylocations specifying various stimulation parameters such as voltage orcurrent amplitude, pulse width and pulse rate. Stimulation generator 84,e.g., under control of processor 80, then makes use of the electrodecombination and parameters in formulating and delivering the electricalstimulation to patient 12.

According to examples described herein, when IMD 14 is activated fordelivery of posture-responsive therapy, such stimulation parameters maybe adjusted to modify stimulation therapy delivered by IMD 14 based onthe detected posture state of patient 12. In some examples, processor 80may detect a posture state of patient 12 via posture state module 86that indicates that a modification of the stimulation therapy isappropriate, e.g., according to instructions stored in memory 82.Processor 80 may access instructions for modifying the stimulationtherapy based on the patient 12 posture state, e.g., by changing from astimulation program appropriate for the previous posture state to astimulation program appropriate for patient's current posture state.

Processor 80 also may control telemetry circuit 88 to send and receiveinformation to and from external programmer 20. For example, telemetrycircuit 88 may send information to and receive information from patientprogrammer 30.

An exemplary range of electrical stimulation parameters likely to beeffective in treating chronic pain, e.g., when applied to spinal cord18, are listed below. While stimulation pulses are described,stimulation signals may be of any of a variety of forms such as sinewaves or the like.

1. Pulse Rate: between approximately 0.5 Hz and approximately 1200 Hz,more preferably between approximately 5 Hz and approximately 250 Hz, andstill more preferably between approximately 30 Hz and approximately 130Hz.

2. Amplitude: between approximately 0.1 volts and approximately 50volts, more preferably between approximately 0.5 volts and approximately20 volts, and still more preferably between approximately 1 volt andapproximately 10 volts. In other examples, a current amplitude may bedefined as the biological load in the voltage that is delivered. Forexample, the range of current amplitude may be between approximately 0.1milliamps (mA) and approximately 50 mA.

3. Pulse Width: between approximately 10 microseconds and approximately5000 microseconds, more preferably between approximately 100microseconds and approximately 1000 microseconds, and still morepreferably between approximately 180 microseconds and approximately 450microseconds.

In other applications, different ranges of parameter values may be used.For DBS, as one example, alleviation or reduction of symptoms associatedwith Parkinson's disease, essential tremor, epilepsy, psychiatricdisorders or other disorders may make use of stimulation having a pulserate in the range of approximately 0.5 to approximately 1200 Hz, such asbetween approximately 5 to approximately 250 Hz, or betweenapproximately 30 to approximately 185 Hz, and a pulse width in the rangeof approximately 10 microseconds and 5000 microseconds, such as betweenapproximately 60 microseconds and approximately 1000 microseconds, orbetween approximately 60 microseconds and approximately 450microseconds, or between approximately 60 microseconds and approximately150 microseconds. Amplitude ranges such as those described above withreference to SCS, or other amplitude ranges, may be used for differentDBS applications.

Processor 80 accesses stimulation parameters in memory 82, e.g., asprograms and groups of programs. Upon selection of a particular programgroup, processor 80 may control stimulation generator 84 to generate anddeliver stimulation according to the programs in the groups, e.g.,simultaneously or on a time-interleaved basis. A group may include asingle program or multiple programs. As mentioned previously, eachprogram may specify a set of stimulation parameters, such as amplitude,pulse width and pulse rate. In addition, each program may specify aparticular electrode combination for delivery of stimulation. Again, theelectrode combination may specify particular electrodes in a singlearray or multiple arrays, e.g., on a single lead or among multipleleads. Processor 80 also may control telemetry circuit 88 to send andreceive information to and from external programmer 20. For example,telemetry circuit 88 may send information to and receive informationfrom patient programmer 30.

Posture state module 86 allows IMD 14 to sense the patient posturestate, e.g., posture, activity or any other static position or motion ofpatient 12. In the example of FIG. 4A, posture state module 86 includesone or more accelerometers, such as three-axis accelerometers, capableof detecting static orientation or vectors in three-dimensions. Exampleaccelerometers include a micro-electro-mechanical accelerometer. Inother examples, posture state module 86 may alternatively oradditionally include one or more gyroscopes, piezoelectric crystals,pressure transducers or other sensors to sense the posture state ofpatient 12. Posture state data generated by posture state module 86 andprocessor 80 may correspond to an activity and/or posture undertaken bypatient 12 or a gross level of physical activity, e.g., activity countsbased on footfalls or the like. Posture state data may be indicative ofthe posture state of patient 12.

Posture state data from posture state module 86 may be stored in memory82 for later review by a clinician, used to adjust therapy, present aposture state indication to patient 12 (e.g., via patient programmer30), or some combination thereof. As an example, processor 80 may recordthe posture state parameter value, or output, of the 3-axisaccelerometer and assign the posture state parameter value to a certainpredefined posture indicated by the posture state parameter value. Inthis manner, IMD 14 may be able to track how often patient 12 remainswithin a certain posture. IMD 14 may also store which group or programwas being used to deliver therapy when patient 12 was in the sensedposture. Further, processor 80 may also adjust therapy for a new posturewhen posture state module 86 indicates that patient 12 has in factchanged postures. Therefore, IMD 14 may be configured to provide postureresponsive stimulation therapy to patient 12. Stimulation adjustments inresponse to posture state may be automatic or semi-automatic (subject topatient approval). In many cases, fully automatic adjustments may bedesirable so that IMD 14 may react more quickly to posture statechanges.

As described herein, the posture state data indicative of patientposture state may be stored to be later used to generate baselinepatient information and/or posture-responsive patient information.Memory 82 may store all of the posture state data detected duringtherapy or use of IMD 14, or memory 82 may periodically offload theposture state data to clinician programmer 60 or a different externalprogrammer 20 or device. In other examples, memory 82 may reserve aportion of the memory, e.g., patient data 83, to store recent posturestate data easily accessible to processor 80 for analysis. In addition,older posture state data may be compressed to require less memory untillater needed by external programmer 20 or processor 80.

A posture state parameter value from posture state module 86 that isindicative of the posture state may constantly vary throughout the dayof patient 12. However, a certain activity (e.g., walking, running, orbiking) or a posture (e.g., standing, sitting, or lying down) mayinclude multiple posture state parameter values from posture statemodule 86. Memory 82 may include definitions for each posture state ofpatient 12. In one example, the definition of each posture state may beillustrated as a cone in three-dimensional space. Whenever the posturestate parameter value, e.g., a vector, from the three-axis accelerometerof posture state module 86 resides within a predefined cone, processor80 indicates that patient 12 is in the posture state of the cone. Inother examples, posture state parameter value from the 3-axisaccelerometer may be compared to a look-up table or equation todetermine the posture state in which patient 12 currently resides.

Posture-responsive stimulation therapy may allow IMD 14 to implement acertain level of automation in therapy adjustments. Automaticallyadjusting stimulation may free patient 12 from the constant task ofmanually adjusting therapy each time patient 12 changes posture orstarts and stops a certain posture state. Such manual adjustment ofstimulation parameters can be tedious, requiring patient 14 to, forexample, depress one or more keys of patient programmer 30 multipletimes during the patient posture state to maintain adequate symptomcontrol. In some examples, patient 12 may eventually be able to enjoyposture-responsive stimulation therapy without the need to continuemaking changes for different postures via patient programmer 30.Instead, patient 12 may transition immediately or over time to fullyautomatic adjustments based on posture state.

Although posture state module 86 is described as containing the 3-axisaccelerometer, posture state module 86 may contain multiple single-axisaccelerometers, dual-axis accelerometers, 3-axis accelerometers, or somecombination thereof. In some examples, an accelerometer or other sensormay be located within or on IMD 14, on one of leads 16 (e.g., at thedistal tip or at an intermediate position), an additional sensor leadpositioned somewhere within patient 12, within an independentimplantable sensor, or even worn on patient 12. For example, one or moremicrosensors may be implanted within patient 12 to communicate posturestate information wirelessly to IMD 14. In this manner, the patient 12posture state may be determined from multiple posture state sensorsplaced at various locations on or within the body of patient 12.

In other examples, posture state module 86 may additionally oralternatively be configured to sense one or more physiologicalparameters of patient 12. For example, physiological parameters mayinclude heart rate, electromyography (EMG), an electroencephalogram(EEG), an electrocardiogram (ECG), temperature, respiration rate, or pH.These physiological parameters may be used by processor 80, in someexamples, to confirm or reject changes in sensed posture state that mayresult from vibration, patient travel (e.g., in an aircraft, car ortrain), or some other false positive of posture state.

In some examples, processor 80 processes the analog output of theposture state sensor in posture state module 86 to determine activityand/or posture data. For example, where the posture state sensorcomprises an accelerometer, processor 80 or a processor of posture statemodule 86 may process the raw signals provided by the posture statesensor to determine activity counts. In some examples, processor 80 mayprocess the signals provided by the posture state sensor to determinevelocity of motion information along each axis.

In one example, each of the x, y, and z signals provided by the posturestate sensor has both a DC component and an AC component. The DCcomponents describes the gravitational force exerted upon the sensor andcan thereby be used to determine orientation of the sensor within thegravitational field of the earth. Assuming the orientation of the sensoris relatively fixed with respect to the patient, the DC components ofthe x, y and z signals may be utilized to determine the patient'sorientation within the gravitational field, and hence to determine theposture of the patient.

The AC component of the x, y and z signals yields information aboutpatient motion. In particular, the AC component of a signal may be usedto derive a value for an activity describing the patient's motion. Thisactivity may involve a level, direction of motion, or acceleration ofthe patient.

One method for determining the patient activity is by determining anactivity count. An activity count may be used to indicate the activityor activity level of patient 12. For example, a signal processor may sumthe magnitudes of the AC portion of an accelerometer signal for Nconsecutive samples. For instance, assuming sampling occurs as 25 Hz, Nmay be set to 25, so that count logic provides the sum of the samplesthat are obtained in one second. This sum may be referred to as an“activity count”. The number “N” of consecutive samples may be selectedby the processor based on the current posture state, if desired. Theactivity count may be the activity portion of the activity parametervalue that is added to the posture portion. The resulting activityparameter value may then incorporate both activity and posture togenerate an accurate indication of the motion of patient 12.

As another example, the activity parameter value may be defineddescribing direction of motion. This activity parameter value may beassociated with a vector and an associated tolerance, which may be adistance from the vector. Another example of an activity parameter valuerelates to acceleration. The value quantifying a level of change ofmotion over time in a particular direction may be associated with thisparameter referenced in the activity parameter value.

IMD 14 wirelessly communicates with external programmer 20, e.g.,patient programmer 30 or clinician programmer 60, or another device byradio frequency (RF) communication or proximal inductive interaction ofIMD 14 with external programmer 20. Telemetry circuit 88 may sendinformation to and receive information from external programmer 20 on acontinuous basis, at periodic intervals, at non-periodic intervals, orupon request from the stimulator or programmer. To support RFcommunication, telemetry circuit 88 may include appropriate electroniccomponents, such as amplifiers, filters, mixers, encoders, decoders, andthe like.

Power source 90 delivers operating power to the components of IMD 14.Power source 90 may include a small rechargeable or non-rechargeablebattery and a power generation circuit to produce the operating power.Recharging may be accomplished through proximal inductive interactionbetween an external charger and an inductive charging coil within IMD14. In some examples, power requirements may be small enough to allowIMD 14 to utilize patient motion and implement a kineticenergy-scavenging device to trickle charge a rechargeable battery. Inother examples, traditional batteries may be used for a limited periodof time. As a further alternative, an external inductive power supplycould transcutaneously power IMD 14 when needed or desired.

FIG. 4B is a functional block diagram illustrating various component ofan external sensing device 15. In the example, of FIG. 4B, externalsensing device includes processor 81, memory 85, posture state module87, power source 91 and telemetry circuit 93. External sensing device 15may operate substantially similar to that of IMD 14 of FIG. 4A. However,unlike IMD 14, external sensing device 15 does not include a stimulationgenerator and is not configured to delivery stimulation therapy topatient 12. Rather, external sensing device 15 is configured to monitorthe posture state of patient 12 via posture state module 87.

External sensing device 15 may be temporarily affixed to patient 12 tomonitor the posture state of patient 12 over a period of time. Asdescribed above, external sensing device 15 may be configured to theaffixed to patient 12 in a manner that allows external sensing device 15to accurately monitor the posture state of patient 12 over a period oftime. For example, external sensing device 15 may be configured as anadhesive bandage or pad that may be adhered to the skin of patient 12.As another example, external sensing device 15 may be configured to bestrapped to patient 12, e.g., to the wrist of a patient similar to thatof a watch, or the torso of patient 12, to temporary attach externalsensing device 15 to patient 12.

Similar to that of IMD 14, external sensing device 15 may monitor thepostures states of patient 12 via posture state module 87 and then storethe patient data 89, e.g., posture state data indicative of patientposture state, in memory 85. External sensing device 15 may be used tomonitor the posture state of patient 12 over a desired period of time,including one or more time periods during which patient 12 is notreceiving posture-responsive therapy from IMD 14 and/or one or more timeperiods during which patient 12 is receiving posture-responsive therapyfrom IMD 14. Although not limited to such situations, external sensingdevice 15 may be particularly useful for monitoring the posture state ofpatient 12 during periods of time in which posture state module 86 ofIMD 14 is not detecting the posture state of patient 12, e.g., prior tothe implantation of IMD 14 within patient 12.

Programmer 20 or other external device may periodically interrogateexternal sensing device 15 using telemetry circuit 93 to acquire patientdata 89, e.g., posture state data, for patient 12 over any given periodof time. Telemetry circuit 93 may support wired and/or wirelesstelemetry with programmer 20 or other external device. Using theacquired posture state data 89, programmer 20 or other external devicemay generate patient information, which may be either baseline patientinformation or posture-responsive patient information depending onwhether IMD 14 was active for delivery of posture-responsive therapy topatient 12 during the time period with which the particular patient datais associated.

FIG. 5 is a functional block diagram illustrating various components ofan IMD 26, which delivers a therapeutic agent to patient 12. IMD 26 is adrug pump that operates substantially similar to IMD 14 of FIG. 4A, butdelivers a therapeutic agent instead of electrical stimulation. IMD 26includes processor 92, memory 94, pump module 96, posture state module98, telemetry circuit 100, and power source 102. Memory 94 includesposture state data 95. Instead of stimulation generator 84 of IMD 14,IMD 26 includes pump module 96 for delivering drugs or some othertherapeutic agent via catheter 28. Pump module 96 may include areservoir to hold the drug and a pump mechanism to force drug out ofcatheter 28 and into patient 12.

Processor 92 controls pump module 96 according to therapy instructionsstored within memory 94. For example, memory 94 may contain the programsor groups of programs that define the drug delivery therapy for patient12. A program may indicate the bolus size or flow rate of the drug, andprocessor 92 may accordingly deliver therapy. Processor 92 may also useposture state data from posture state module 98 to adjust drug deliverytherapy when patient 12 changes posture states, e.g., adjusts his or herposture.

FIG. 6 is a functional block diagram illustrating various components ofan external programmer 20 for IMDs 14 or 26. Programmer 20 may be ahandheld computing device, a workstation or another dedicated ormultifunction computing device. For example, programmer 20 may be ageneral purpose computing device (e.g., a personal computer, personaldigital assistant (PDA), cell phone, and so forth) or may be a computingdevice dedicated to programming the IMD. As shown in FIG. 6, externalprogrammer 20 includes processor 104, memory 108, telemetry circuit 110,user interface 106, and power source 112. External programmer 20 may beembodied as patient programmer 30 (FIG. 2) or clinician programmer 60(FIG. 3).

Processor 104 processes instructions by memory 108 and may store userinput received through user interface 106 into the memory whenappropriate for the current therapy. In addition, processor 104 providesand supports any of the functionality described herein with respect toeach example of user interface 106. Processor 104 may comprise any oneor more of a microprocessor, DSP, ASIC, FPGA, or other digital logiccircuitry, and the functions attributed to programmer 104 may beembodied as software, firmware, hardware or any combination thereof.

Memory 108 may include any one or more of a RAM, ROM, EEPROM, flashmemory or the like. Memory 108 may include instructions for operatinguser interface 106, telemetry module 110 and managing power source 112.Memory 108 may store program instructions that, when executed byprocessor 104, cause processor 104 and programmer 20 to provide thefunctionality ascribed to them herein. Memory 108 also includesinstructions for generating and delivering programming commands to IMD14, such as a programming command that instructs IMD 14 to activate ordeactivate a posture responsive therapy mode. Memory 108 may alsoinclude a removable memory portion that may be used to provide memoryupdates or increases in memory capacities. A removable memory may alsoallow patient data to be easily transferred to another computing device,or to be removed before programmer 20 is used to program therapy foranother patient.

A clinician, patient 12 or another user (e.g., a patient caretaker)interacts with user interface 106 in order to manually change thestimulation parameter values of a program, change programs within agroup, turn posture responsive stimulation ON or OFF, view therapyinformation, view posture state information, or otherwise communicatewith IMDs 14 or 26.

User interface 106 may include a screen and one or more inputmechanisms, such as buttons as in the example of patient programmer 30,that allow external programmer 20 to receive input from a user.Alternatively, user interface 106 may additionally or only utilize atouch screen display, as in the example of clinician programmer 60. Thescreen may be a liquid crystal display (LCD), dot matrix display,organic light-emitting diode (OLED) display, touch screen, or any otherdevice capable of delivering and/or accepting information. For visibleposture state indications, a display screen may suffice. For audibleand/or tactile posture state indications, programmer 20 may furtherinclude one or more audio speakers, voice synthesizer chips,piezoelectric buzzers, or the like.

Input mechanisms for user interface 106 may include a touch pad,increase and decrease buttons, emergency shut off button, and otherbuttons needed to control the stimulation therapy, as described abovewith regard to patient programmer 30. Processor 104 controls userinterface 106, retrieves data from memory 108 and stores data withinmemory 108. Processor 104 also controls the transmission of data throughtelemetry circuit 110 to IMDs 14 or 26. Memory 108 includes operationinstructions for processor 104 and data related to patient 12 therapy.

User interface 106 configured to present baseline patient informationand posture-responsive patient information to the user. In addition topresenting text, user interface 106 may be configured to presentgraphical representations to the user in grayscale, color, and othervisual formats. For example, in examples which the patient informationincludes proportional posture information, user interface 106 may beconfigured to present the baseline proportional posture information andposture-responsive proportional information as a graphical postureduration graphs that visually indicates the proportion of time patient12 has been engaged in each posture state during each respective timeperiod. User interface 106 may be able to reconfigure the displayedposture duration graph to show the percentage difference between thebaseline proportional posture information and posture-responsiveproportional posture information to the user. From this information, theuser may be able to evaluate the efficacy of posture-responsive therapybased on a comparison of the baseline patient information toposture-responsive patient information. In some examples, the user mayadjust one or more aspects of the posture-responsive therapy in view ofthe comparison in an attempt to improve therapeutic efficacy.

Baseline and posture-responsive patient information may be stored withinmemory 108 or within another data storage device, such as a hard drive,flash memory or the like. External programmer 20 may store informationobtained from previously interrogating IMD 14 and/or external sensingdevice 15 so that that same information does not need to be retrievedfrom the IMD or external sensing device repeatedly, and so that IMD 14and/or external sensing device 15 may overwrite information, ifnecessary, in some implementations. Hence, external programmer 20 mayretrieve new information from IMD 14 and/or external sensing device 15,i.e., information that has been newly obtained since the previousinterrogation, and also rely on archived information stored in theprogrammer or elsewhere. External programmer 20 may store the patientinformation in memory 108 during communication sessions with IMD 14and/or external sensing device 15. The user may then have quick accessto the patient data without first communicating to IMD 14 and/orexternal sensing device 15, and acquiring the patient data from IMD 14and/or external sensing device 15 every time that the user desired toreview baseline and posture responsive patient information, for example.If memory 108 does store patient information from patient 12, memory 108may use one or more hardware or software security measures to protectthe identify of patient 12. For example, memory 108 may have separatephysical memories for each patient or the user may be required to entera password to access each patient's data.

Telemetry circuit 110 allows the transfer of data to and from IMD 14,IMD 26, and/or external sensing device. Telemetry circuit 110 maycommunicate automatically with IMD 14 or external sensing device 15 at ascheduled time or when the telemetry circuit detects the proximity ofthe stimulator. Alternatively, telemetry circuit 110 may communicatewith IMD 14 or external sensing device 15 when signaled by a userthrough user interface 106. To support RF communication, telemetrycircuit 110 may include appropriate electronic components, such asamplifiers, filters, mixers, encoders, decoders, and the like. Powersource 112 may be a rechargeable battery, such as a lithium ion ornickel metal hydride battery. Other rechargeable or conventionalbatteries may also be used. In some cases, external programmer 20 may beused when coupled to an alternating current (AC) outlet, i.e., AC linepower, either directly or via an AC/DC adapter. Telemetry circuitry 110may additionally or alternatively support wired communication, e.g.,with telemetry circuitry 93 of external sensing device 15.

Although not shown in FIG. 6, in some examples, external programmer 20may include a charger module capable of recharging a power source, suchas a rechargeable battery that may be included in power source 90 of IMD14. Hence, in some cases, the programmer may be integrated withrecharging components to form a combined programmer/recharger unit. Insome examples, programmer 20 may be coupled to a separate rechargingdevice capable of communication with IMD 14. Then, the recharging devicemay be able to transfer programming information, data, or any otherinformation described herein to IMD 14. In this manner, the rechargingdevice may be able to act as an intermediary communication devicebetween external programmer 20 and IMD 14. The techniques describedherein may be communicated between IMD 14 via any type of externaldevice capable of communication with IMD 14.

FIG. 7 is a block diagram illustrating an example system 120 thatincludes an external device, such as a server 122, and one or morecomputing devices 124A-124N, that are coupled to IMD 14 and externalprogrammer 20 shown in FIGS. 1A-1C via a network 126. In this example,IMD 14 may use its telemetry circuit 88 (FIG. 4A) to communicate withexternal programmer 20 via a first wireless connection, and tocommunication with an access point 128 via a second wireless connection.In other examples, IMD 26 may also be used in place of IMD 14, andexternal programmer 20 may be either patient programmer 30 or clinicianprogrammer 60. Although not shown, external sensing device 15 may alsobe coupled to server 122 and computing device 124A-124N in a mannersimilar to that of IMD 14.

In the example of FIG. 7, access point 128, external programmer 20,server 122, and computing devices 124A-124N are interconnected, and ableto communicate with each other, through network 126. In some cases, oneor more of access point 128, external programmer 20, server 122, andcomputing devices 124A-124N may be coupled to network 126 through one ormore wireless connections. IMD 14, external programmer 20, server 122,and computing devices 124A-124N may each comprise one or moreprocessors, such as one or more microprocessors, DSPs, ASICs, FPGAs,programmable logic circuitry, or the like, that may perform variousfunctions and operations, such as those described in this disclosure.

Access point 128 may comprise a device, such as a home monitoringdevice, that connects to network 126 via any of a variety ofconnections, such as telephone dial-up, digital subscriber line (DSL),or cable modem connections. In other embodiments, access point 128 maybe coupled to network 126 through different forms of connections,including wired or wireless connections.

During operation, IMD 14 may collect and store various forms of patientdata. For example, IMD 14 may collect sensed posture state data duringposture-responsive therapy and other time periods that indicates theposture state of patient 12 and/or collect therapy adjustmentinformation that is indicative of patient therapy adjustments. Forexample, the posture state data may be indicative of how patient 12moves throughout each day, or other particular time period. In somecases, IMD 14 may directly analyze the collected data to generatebaseline and/or posture-responsive patient information of patient 12,such as what percentage of time patient 12 was in each identifiedposture state or the number of therapy adjustments made by patient. Inother cases, however, IMD 14 may send stored patient data to externalprogrammer 20 and/or server 122, either wirelessly or via access point128 and network 126, for remote processing and analysis. Thiscommunication may occur in real time, and network 126 may allow a remoteclinician to review the current patient posture state by receiving apresentation of a posture state indication on a remote display, e.g.,computing device 124A. Alternatively, processing, trending andevaluation functions may be distributed to other devices such asexternal programmer 20 or server 122, which are coupled to network 126.In addition, patient data and/or generated patient information (e.g.,baseline and/or posture-responsive) may be archived by any of suchdevices, e.g., for later retrieval and analysis by a clinician.

In some cases, IMD 14, external programmer 20, external sensing device15 or server 122 may process the patient data, generate patientinformation into a displayable posture state report, which may bedisplayed via external programmer 20 or one of computing devices124A-124N. The posture state report may contain comparative data forevaluation by a clinician, e.g., by visual inspection of graphic data.In some cases, the posture state report may include the number ofactivities patient 12 conducted, a percentage of time patient 12 was ineach posture state, the average time patient 12 was continuously withina posture state, what group or program was being used to deliver therapyduring each activity, the number of adjustments to therapy during eachrespective posture state, or any other information relevant to patient12 therapy, based on analysis and evaluation performed automatically byIMD 14, external programmer 20, external sensing device 15 or server122. A clinician or other trained professional may review and/orannotate the posture state report, and possibly identify any problems orissues with the therapy that should be addressed.

In the manner of FIG. 7, a clinician, physician, technician, or evenpatient 12, may review data by comparing baseline patient informationwith respect to the posture states of patient 12. The comparativebaseline and posture-responsive patient information may be sleep qualityinformation or proportional posture information that reflects howpatient 12 has been moving before, during, and/or after a time periodduring which posture-responsive therapy was delivered from IMD 14. Theuser may remotely monitor the progress and trends of patient 12 withrespect to baseline patient information, limiting the number of timesthat patient 12 may need to physically visit the clinician. Comparativepatient information may be displayed to patient 12 to illustrate theeffectiveness of posture-responsive therapy, as well the progress ofpatient 12. The remote monitoring supported by system 120 may alsoreduce the time needed to find efficacious therapy parameters byallowing the clinician to more frequently monitor differences inposture-responsive patient information, such as, e.g.,posture-responsive sleep quality information and proportional postureinformation, with respect to the corresponding baseline patientinformation. Any of the user interfaces described herein with respect topatient programmer 30 or clinician programmer 60 may also be presentedvia any of computing devices 124A-124N.

In some cases, server 122 may be configured to provide a secure storagesite for archival of patient data or generated patient information thathas been collected from IMD 14, external sensing device 15, and/orexternal programmer 20. Network 126 may comprise a local area network,wide area network, or global network, such as the Internet. In somecases, external programmer 20 or server 122 may assemble posture statedata or generated patient information in web pages or other documentsfor viewing by trained professionals, such as clinicians, via viewingterminals associated with computing devices 124A-124N. System 120 may beimplemented, in some aspects, with general network technology andfunctionality similar to that provided by the Medtronic CareLink®Network developed by Medtronic, Inc., of Minneapolis, Minn.

Although some examples of the disclosure may involve patient informationand data, system 120 may be employed to distribute any informationrelating to the treatment of patient 12 and the operation of any deviceassociated therewith. For example, system 120 may allow therapy errorsor device errors to be immediately reported to the clinician. Inaddition, system 120 may allow the clinician to remotely intervene inthe therapy and reprogram IMD 14, patient programmer 30, externalsensing device 15, or communicate with patient 12. In an additionalexample, the clinician may utilize system 120 to monitor multiplepatients and share data with other clinicians in an effort to coordinaterapid evolution of effective treatment of patients.

Furthermore, although the disclosure is described with respect to SCStherapy, such techniques may be applicable to IMDs that convey othertherapies in which posture state information is important, such as,e.g., DBS, pelvic floor stimulation, gastric stimulation, occipitalstimulation, functional electrical stimulation, and the like. Also, insome aspects, techniques for evaluating patient information, asdescribed in this disclosure, may be applied to IMDs that are generallydedicated to sensing or monitoring and do not include stimulation orother therapy components, such as, external sensing device 15. Forexample, an implantable monitoring device may be implanted inconjunction with an implantable stimulation device, and be configured toevaluate sensing integrity of leads or electrodes associated with theimplantable monitoring device based on sensed signals evoked by deliveryof stimulation by the implantable stimulation device.

FIGS. 8A-8C are conceptual illustrations of posture state spaces 140,152, 155 within which posture state reference data may define theposture state of patient 12. Posture state reference data may definecertain regions associated with particular posture states of patient 12within the respective posture state spaces 140, 152, 155. The output ofone or more posture state sensors may be analyzed by posture statemodule 86 with respect to posture state spaces 140, 152, 155 todetermine the posture state of patient 12. For example, if the output ofone or more posture state sensors is within a particular posture regiondefined by posture state reference data, posture state module 86 maydetermine that patient 12 is within the posture state associated withthe respective posture state region.

In some cases, one or more posture state regions may be defined asposture state cones. Posture state cones may be used to define a posturestate of patient 12 based on the output from a posture state sensor of aposture state according to an example method for posture statedetection. A posture state cone may be centered about a posture statereference coordinate vector that corresponds to a particular posturestate. In the examples of FIGS. 8A and 8B, the posture state module 86of IMD 14 or IMD 26 may use a posture state sensor, e.g., a three-axisaccelerometer that provides data indicating the posture state of patient12, to sense posture vectors. While the sensed data may be indicative ofany posture state, postures of patient 12 will generally be used belowto illustrate the concept of posture cones. As shown in FIG. 8A, posturestate space 140 represents a vertical plane dividing patient 12 fromleft and right sides, or the sagittal plane. A posture state parametervalue from two axes of the posture state sensor may be used to determinethe current posture state of patient 12 according to the posture statespace 140. The posture state data may include x, y and z coordinatevalues.

A posture cone may be defined by a reference coordinate vector for agiven posture state in combination with a distance or angle defining arange of coordinate vectors within a cone surrounding the posturereference coordinate vector. Alternatively, a posture cone may bedefined by a reference coordinate vector and a range of cosine valuescomputed using the reference coordinate vector as an adjacent vector andany of the outermost vectors of the cone as a hypotenuse vector. If asensed posture state vector is within an applicable angle or distance ofthe reference coordinate vector, or if the sensed posture state vectorand the reference coordinate vector produce a cosine value in aspecified cosine range, then posture state vector is determined toreside within the posture cone defined by the reference coordinatevector.

Posture state space 140 is segmented into different posture cones thatare indicative of a certain posture state of patient 12. In the exampleof FIG. 8A, upright cone 142 indicates that patient 12 is sitting orstanding upright, lying back cone 148 indicates that patient 12 is lyingback down, lying front cone 144 indicates that patient 12 is lying chestdown, and inverted cone 146 indicates that patient 12 is in an invertedposition. Other cones may be provided, e.g., to indicate that patient 12is lying on the right side or left side. For example, a lying rightposture cone and a lying left posture cone positioned outside of thesagittal plane illustrated in FIG. 8A. In particular, the lying rightand lying left posture cones may be positioned in a coronal planesubstantially perpendicular to the sagittal plane illustrated in FIG.8A. For ease of illustration, lying right and lying left cones are notshown in FIG. 8A.

Vertical axis 141 and horizontal axis 143 are provided for orientationof posture state area 140, and are shown as orthogonal for purposes ofillustration. However, posture cones may have respective posturereference coordinate vectors that are not orthogonal in some cases. Forexample, individual reference coordinate vectors for cones 142 and 146may not share the same axis, and reference coordinate vectors for cones144 and 148 may not share the same axis. Also, reference coordinatevectors for cones 144 and 148 may or may not be orthogonal to referencecoordinates vectors for cones 142, 146. Therefore, although orthogonalaxes are shown in FIG. 8A for purposes of illustration, respectiveposture cones may be defined by individualized reference coordinatevectors for the cones.

IMD 14 may monitor the posture state parameter value of the posturestate sensor to produce a sensed coordinate vector and identify thecurrent posture of patient 12 by identifying which cone the sensedcoordinated vector of the posture state sensor module 86 resides. Forexample, if the posture state parameter value corresponds to a sensedcoordinate vector that falls within lying front cone 144, IMD 14determines that patient 12 is lying down on their chest. IMD 14 maystore this posture information as a determined posture state or as rawoutput from the posture state sensor, change therapy according to theposture, or both. Additionally, IMD 14 may communicate the postureinformation to patient programmer 30 so that the patient programmer canpresent a posture state indication to patient 12.

In addition, posture state area 140 may include hysteresis zones 150A,150B, 150C, and 150D (collectively “hysteresis zones 150”). Hysteresiszones 150 are positions within posture state area 140 where no posturecones have been defined. Hysteresis zones 150 may be particularly usefulwhen IMD 14 utilizes the posture state information and posture cones toadjust therapy automatically. If the posture state sensor indicates thatpatient 12 is in upright cone 142, IMD 14 would not detect that patient12 has entered a new posture cone until the posture state parametervalue indicates a different posture cone. For example, if IMD 14determines that patient 12 moves to within hysteresis zone 150A fromupright cone 142, IMD 14 retains the posture as upright. In this manner,IMD 14 does not change the corresponding therapy until patient 12 fullyenters a different posture cone. Hysteresis zones 150 prevent IMD 14from continually oscillating between different therapies when patient12's posture state resides near a posture cone boundary.

Each posture cone 142, 144, 146, 148 may be defined by an angle inrelation to a reference coordinate vector defined for the respectiveposture cone. Alternatively, some posture cones may be defined by anangle relative to a reference coordinate vector for another posturecone. For example, lying postures may be defined by an angle withrespect to a reference coordinate vector for an upright posture cone. Ineach case, as described in further detail below, each posture cone maybe defined by an angle in relation to a reference coordinate posturevector defined for a particular posture state. The reference coordinatevector may be defined based on posture sensor data generated by aposture state sensor while patient 12 occupies a particular posturestate desired to be defined using the reference coordinate vector. Forexample, a patient may be asked to occupy a posture so that a referencecoordinate vector can be sensed for the respective posture. In thismanner, vertical axis 141 may be specified according to the patient'sactual orientation. Then, a posture cone can be defined using thereference coordinate vector as the center of the cone.

Vertical axis 141 in FIG. 8A may correspond to a reference coordinatevector sensed while the patient was occupying an upright posture state.Similarly, a horizontal axis 143 may correspond to a referencecoordinate vector sensed while the patient is occupying a lying posturestate. A posture cone may be defined with respect to the referencecoordinate vector. Although a single axis is shown extending through theupright and inverted cones 142, 146, and another single axis is shownextending through the lying down and lying up cones 144, 148, individualreference coordinate vectors may be used for respective cones, and thereference coordinate vectors may not share the same axes, depending ondifferences between the reference coordinate vectors obtained for theposture cones.

Posture cones may be defined by the same angle or different angles,symmetrical to either axis, or asymmetrical to either axis. For example,upright cone 142 may have an angle of eighty degrees, +40 degrees to −40degrees from the positive vertical axis 141. In some cases, lying conesmay be defined relative to the reference coordinate vector of theupright cone 142. For example, lying up cone 148 may have an angle ofeighty degrees, −50 degrees to −130 degrees from the positive verticalaxis 141. Inverted cone 146 may have an angle of eighty degrees, −140degrees to +140 degrees from vertical axis 141. In addition, lying downcone 144 may have an angle of eighty degrees, +50 degrees to +130degrees from the positive vertical axis 141. In other examples, eachposture cone may have varying angle definitions, and the angles maychange during therapy delivery to achieve the most effective therapy forpatient 12.

Alternatively or additionally, instead of an angle, posture cones 144,146, 148, 148 may be defined by a cosine value or range of cosine valuesin relation to vertical axis 141, horizontal axis 143, or some otheraxis, such as, e.g., individual reference coordinate vectors for therespective cones. For example, a posture cone may be defined by a cosinevalue that defines the minimum cosine value, calculated using areference coordinate vector and a respective coordinate vector sensed bya posture state sensor at any point in time. In the cosine computation,the value (adjacent/hypotenuse) can be computed using the magnitude ofthe coordinate reference vector as the adjacent and a vector at theoutermost extent of the cone as the hypotenuse to define a range ofcosine values consistent with the outer bound of the cone.

For upright cone 142, the cosine range may extend from the maximumcosine value of 1.0, corresponding to a sensed vector that matches thereference coordinate vector of the upright cone, to a minimum cosinevalue that corresponds to a sensed vector at the outer limit of theupright cone. As another example, for lying cone 144, the cosine rangemay extend from the maximum cosine value of 1.0, corresponding to asensed vector that matches the reference coordinate vector of the lyingcone, to a minimum cosine value that corresponds to a sensed vector atthe outer limit of the lying cone. Alternatively, the lying cone 144 maybe defined with reference to the upright cone 142, such that the cosinerange may extend between a maximum and minimum values determinedrelative to the reference coordinate vector for the upright cone.

In other examples, posture state area 140 may include additional posturecones than those shown in FIG. 8A. For example, a reclining cone may belocated between upright cone 142 and lying back cone 148 to indicatewhen patient 12 is reclining back (e.g., in a dorsal direction). In thisposition, patient 12 may need a different therapy to effectively treatsymptoms. Different therapy programs may provide efficacious therapy topatient 12 when patient 12 is in each of an upright posture (e.g.,within upright cone 142), lying back posture (e.g., within lying backcone 148), and a reclining back posture. Thus, a posture cone thatdefines the reclining back posture may be useful for providingefficacious posture-responsive therapy to patient 12. In other examples,posture state area 140 may include fewer posture cones than cones 142,144, 146, 148 shown in FIG. 8A. For example, inverted cone 146 may bereplaced by a larger lying back cone 148 and lying front cone 144.

FIG. 8B illustrates an example posture state space 152 that is athree-dimensional space in which the posture state parameter value fromthe posture state sensor is placed in relation to the posture cones.Posture state space 152 is substantially similar to posture state area140 of FIG. 8A. However, the posture state parameter value derived fromall three axes of a 3-axis accelerometer may be used to accuratelydetermine the posture state of patient 12. In the example of FIG. 8B,posture state space 152 includes upright cone 154, lying back cone 156,and lying front cone 158. Posture state space 152 also includeshysteresis zones (not shown) similar to those of posture state area 140.In the example of FIG. 8B, the hysteresis zones are the spaces notoccupied by a posture cone, e.g., upright cone 154, lying back cone 156,and lying front cone 158.

Posture cones 154, 156 and 158 also are defined by a respective centerline 153A, 153B, or 153C, and associated cone angle A, B or C. Forexample, upright cone 154 is defined by center line 153A that runsthrough the center of upright cone 154. Center line 153A may correspondto an axis of the posture state sensor or some other calibrated vector.In some embodiments, each center line 153A, 153B, 153C may correspond toa posture reference coordinate vectors defined for the respectivepostures, e.g., the upright posture. For instance, assuming that patient12 is standing, the DC portion of the x, y, and z signals detected bythe posture state sensor of posture state module 86 define a posturevector that corresponds to center line 153A. The x, y, and z signals maybe measured while patient 12 is known to be in a specified position,e.g., standing, and the measured vector may be correlated with theupright posture state. Thereafter, when the DC portions of the posturestate sensor signal are within some predetermined cone tolerance orproximity, e.g., as defined by an angle, distance or cosine value, ofthe posture reference coordinate vector (i.e., center line 153A), it maybe determined that patient 12 is in the upright posture. In this manner,a sensed posture coordinate vector may be initially measured based onthe output of one or more posture state sensors of posture state module86, associated with a posture state, such as upright, as a referencecoordinate vector, and then later used to detect a patient's posturestate.

As previously indicated, it may be desirable to allow some tolerance tobe associated with a defined posture state, thereby defining a posturecone or other volume. For instance, in regard to the upright posturestate, it may be desirable to determine that a patient who is uprightbut leaning slightly is still in the same upright posture state. Thus,the definition of a posture state may generally include not only aposture reference coordinate vector (e.g., center line 153A), but also aspecified tolerance. One way to specify a tolerance is by providing anangle, such as cone angle A, relative to coordinate reference vector153A, which results in posture cone 154 as described herein. Cone angleA is the deflection angle, or radius, of upright cone 154. The totalangle that each posture cone spans is double the cone angle. The coneangles A, B, and C may be generally between approximately 1 degree andapproximately 70 degrees. In other examples, cone angles A, B, and C maybe between approximately 10 degrees and 30 degrees. In the example ofFIG. 8B, cone angles A, B, and C are approximately 20 degrees. Coneangles A, B, and C may be different, and center lines 153A, 153B, and153C may not be orthogonal to each other.

In some examples, a tolerance may be specified by a cosine value orrange of cosine values. The use of cosine values, in some cases, mayprovide substantial processing efficiencies. As described above, forexample, a minimum cosine value, determined using the referencecoordinate vector as adjacent and sensed coordinate vector ashypotenuse, indicates the range of vectors inside the cone. If a sensedcoordinate vector, in conjunction with the reference coordinate vectorfor a posture cone, produces a cosine value that is less than theminimum cosine value for the posture cone, the sensed coordinate vectordoes not reside within the pertinent posture cone. In this manner, theminimum cosine value may define the outer bound of a range of cosinevalues within a particular posture cone defined in part by a referencecoordinate vector.

While center lines 153A, 153B, 153C of each of the posture cones 154,156, 158, respectively, are shown in FIG. 8B as being substantiallyorthogonal to each other, in other examples, center lines 153A, 153B,and 153C may not be orthogonal to each other. Again, the relativeorientation of center lines 153A, 153B, 153C may depend on the actualreference coordinate vector output of the posture state sensor ofposture state module 86 of IMD 14 when patient 12 occupies therespective postures.

In some cases, all of the posture cones may be individually definedbased on actual reference coordinate vectors. Alternatively, in somecases, some posture cones may be defined with reference to one or morereference coordinate vectors for one or more other posture cones. Forexample, lying reference coordinate vectors could be assumed to beorthogonal to an upright reference coordinate vector. Alternatively,lying reference coordinate vectors could be individually determinedbased on sensed coordinate vectors when the patient is in respectivelying postures. Hence, the actual reference coordinate vectors fordifferent postures may be orthogonal or non-orthogonal with respect toone another.

In addition to upright cone 154, lying back cone 156, and lying frontcone 158, posture state space 152 may include additional posture cones.For example, a lying right cone may be provided to define a patientposture in which patient 12 is lying on his right side and a lying leftcone may be provided to define a patient posture in which patient 12 islying on his left side. In some cases, the lying right cone and lyingleft cone may be positioned approximately orthogonal to upright cones154, in approximately the same plane as lying back cone 156 and lyingfront cone 158. Moreover, posture state space 152 may include aninverted cone positioned approximately opposite of upright cone 154.Such a cone indicates that the patient's posture is inverted from theupright posture, i.e., upside down.

In some examples, to detect the posture state of a patient, posturestate module 86 of IMD 14 may determine a sensed coordinate vector basedon the posture sensor data generated by one or more posture statesensors, and then analyze the sensed coordinate vector with respect toposture cones 154, 156, 158 of FIG. 8B. For example, in a case in whicha posture cone is defined by a reference coordinate vector and atolerance angle, e.g., tolerance angle “A,” posture state module 86 maydetermine whether the sensed coordinate vector is within upright posturecone 154 by calculating the angle between the sensed coordinate vectorand reference coordinate vector, and then determine whether the angle isless than the tolerance angle “A.” If so, posture state module 86determines that the sensed coordinate vector is within upright posturecone 154 and detects that patient 12 is in the upright posture. Ifposture state module 86 determines that sensed coordinate vector is notwithin upright posture cone 154, posture state module 86 detects thatpatient 12 is not in the upright posture.

Posture state module 86 may analyze the sensed coordinate vector inposture state space 152 with respect to each individual defined posturecone, such as posture cones 156 and 158, in such a manner to determinethe posture state of patient 12. For example, posture state module 86may determine the angle between the sensed coordinate vector andreference coordinate vector of individual posture cones defined for theposture state, and compare the determined angle to the tolerance angledefined for the respective posture cone. In this manner, a sensedcoordinate vector may be evaluated against each posture cone until amatch is detected, i.e., until the sensed coordinate vector is found toreside in one of the posture cones. Hence, a cone-by-cone analysis isone option for posture detection.

In other examples, different posture detection analysis techniques maybe applied. For example, instead of testing a sensed coordinate vectoragainst posture cones on a cone-by-cone basis, a phased approach may beapplied where the sensed coordinate vector is classified as eitherupright or not upright. In this case, if the sensed coordinate vector isnot in the upright cone, posture state module 86 may determine whetherthe sensed coordinate vector is in a lying posture, either by testingthe sensed coordinate vector against individual lying posture cones ortesting the sensed coordinate vector against a generalized lying posturevolume, such as a donut- or toroid-like volume that includes all of thelying postures, and may be defined using an angle or cosine rangerelative to the upright vector, or relative to a modified or virtualupright vector as will be described. In some cases, if lying posturesare defined by cones, the lying volume could be defined as a logical ORof the donut- or toroid-like volume and the volumes of the lying posturecones. If the cones are larger such that some portions extend beyond thelying volume, then those portions can be added to the lying volume usingthe logical OR-like operation.

If the sensed coordinate vector resides within the donut- or toroid-likelying volume, then the sensed coordinate vector may be tested againsteach of a plurality of lying posture cones in the lying volume.Alternatively, the posture detection technique may not use lying cones.Instead, a posture detection technique may rely on a proximity testbetween the sensed coordinate vector and each of the referencecoordinate vectors for the respective lying postures. The proximity testmay rely on angle, cosine value or distance to determine which of thelying posture reference coordinate vectors is closest to the sensedcoordinate vector. For example, the reference coordinate vector thatproduces the largest cosine value with the sensed coordinate vector ashypotenuse and the reference coordinate vector as adjacent is theclosest reference coordinate vector. In this case, the lying postureassociated with the reference coordinate vector producing the largestcosine value is the detected posture. Hence, there are a variety of waysto detect posture, such as using posture cones, using an upright posturecone with lying volume and lying posture cone test, or using an uprightposture cone with lying volume and lying vector proximity test.

As a further illustration of an example posture detection technique,posture state module 86 may first determine whether patient 12 isgenerally in a lying posture state or upright posture state by analyzingthe sensed coordinate vector in posture state space 152 with respect toan axis 153A for the upright posture state. Axis 153A may correspond tothe upright reference coordinate vector. For example, angle “A” may beused to define upright posture cone 154, as described above, and angles“D” and “E” may be used to define the vector space in which patient 12may be generally considered to be in the lying posture state, regardlessof the particular posture state cone, e.g., lying front cone 158, lyingback cone 156, lying right cone (not shown), or lying left cone (notshown), in which the sensed coordinate vector falls.

If it is determined that a sensed coordinate vector is not within anangle A of the axis 153A, then it may be determined that the patient isnot in the upright posture indicated by the upright posture cone. Inthis case, it may next be determined whether a sensed coordinated vectoris generally in a lying posture space volume, which may be consideredsomewhat donut- or toroid-like, and may be defined relative to theupright reference coordinate vector 153A. As shown, angles “D” and “E”define the minimum and maximum angle values, respectively, that a sensedvector may form with respect to axis 153A of patient 12 for adetermination to be made that the patient is generally in the lyingposture state. Again, cosine values may be used instead of angles todetermine the positions of sensed coordinate vectors relative to posturecones or other posture volumes, or relative to reference coordinatevectors.

As illustrated, angles “D” and “E” may be defined with respect tovertical axis 153A (which may correspond to an upright referencecoordinate vector), which is the reference coordinate vector for theupright posture cone, rather than with respect to a reference coordinatevector of a lying posture state cone. If a sensed vector is within theangular range of D to E, relative to axis 153A, then it can bedetermined by posture state module 86 that the patient is generally in alying posture. Alternatively, in some examples, an angle C could bedefined according to a generally horizontal axis 153C (which maycorrespond to one of the lying reference coordinate vectors). In thiscase, if a sensed vector is within angle C of axis 153C, it can bedetermined by posture state module 86 that the patient is in a lyingposture. In each case, the region generally defining the lying posturestate may be referred to as a posture donut or posture toroid, ratherthan a posture cone. The posture donut may generally encompass a rangeof vectors that are considered to be representative of various lyingdown postures.

As an alternative, posture state module 86 may rely on cosine values ora range of cosine values to define the posture donut or toroid withrespect to axis 153A. When the sensed vector falls within the vectorspace defined by axis 153A and angles “D” and “E”, or produces a cosinevalue with the reference coordinate vector 153A in a prescribed range,posture state module 86 may determine that patient 12 is generally in alying posture state. For example, if the sensed vector and referencecoordinate vector 153 produce a cosine value in a first range, theposture is upright. If the cosine value is in a second range, theposture is lying. If the cosine value is outside of the first and secondranges, the posture may be indeterminate. The first range may correspondto the range of cosine values that would be produced by vectors inposture cone 154 defined by angle A, and the second range may becorrespond to cosine values that would be produced by vectors in theposture donut defined by angles D and E.

When the sensed vector fall within the vector space defined by axis 153Aand angles “D” and “E”, as indicated by angle or cosine value, posturestate module 86 may then determine the particular lying posture stateoccupied by patient 12, e.g., lying front, lying back, lying right, orlying left. To determine the particular lying posture state occupied bypatient 12, posture state module 86 may analyze the sensed vector withrespect to reference coordinate vectors for individual lying posturestate cones, e.g., lying front cone 156, lying back cone 158, lyingright cone (not shown), and lying left cone (not shown), using one moretechniques previously described, such as angle or cosine techniques. Forexample, posture state module 86 may determine whether the sensedcoordinated vector resides within one of the lying posture state conesand, if so, select the posture state corresponding to that cone as thedetected posture state.

FIG. 8C illustrates an example posture state space 155 that is athree-dimensional space substantially similar to posture state space 152of FIG. 8B. Posture state space 155 includes upright posture cone 157defined by reference coordinate vector 167. The tolerance that definesupright posture cone 157 with respect to reference coordinate vector 167may include a tolerance angle or cosine value, as described above. Incontrast to determining whether a sensed coordinate vector resides in alying cone, FIG. 8C illustrates a method for detecting a lying posturebased on proximity of a sensed coordinate vector to one of the referencecoordinate vectors for the lying postures.

As shown in FIG. 8C, posture state space 155 includes four referencecoordinate vectors 159, 161, 163, 165, which are associated with lyingleft, lying right, lying front, and lying back posture states,respectively. Posture state module 86 may have defined each of the fourreference coordinated vector 159, 161, 163, 165 based on the output ofone or more posture sensors while patient 12 occupied each of thecorresponding posture states. Unlike lying front and lying back posturecones 158, 156 in the example of FIG. 8B, the posture state referencedata for the four defined posture states corresponding to referencevectors 159, 161, 163, 165 need not include angles defined relative tothe respective reference vector in a manner that defines a posture cone.Rather, as will be described below, the respective posture statereference vectors may be analyzed with respect to one another in termsof cosine values to determine which particular reference coordinatevector is nearest in proximity to a sensed coordinate vector.

In some examples, to determine the posture state of patient 12, posturestate module 85 may determine whether a sensed coordinate vector iswithin upright posture cone 157 by analyzing the sensed coordinatevector in view of the tolerance angle or cosine value(s) defined withrespect to upright posture reference coordinate vector 167, or whetherthe sensed vector is within a posture donut or toroid defined by a rangeof angles (as in FIG. 8B) or cosine values with respect to uprightposture reference coordinate vector 167, in which case posture statemodule 86 may determine that patient 12 is in a general lying posturestate.

If posture state module 86 determines that patient 12 is occupying ageneral lying posture state, posture state module 86 may then calculatethe cosine value of the sensed coordinate vector with respect to eachlying reference coordinate vectors 159, 161, 163, 165. In such a case,posture state module 86 determines the particular lying posture state ofpatient 12, i.e., lying left, lying right, lying front, lying back,based on which cosine value is the greatest of the four cosine values.For example, if the cosine value calculated with the sensed vector asthe hypotenuse and the lying front reference vector 163 as the adjacentvector is the largest value of the four cosine values, the sensed vectormay be considered closest in proximity to lying front reference vectorout of the four total reference vectors 159, 161, 163, 165. Accordingly,posture state module 85 may determine that patient 12 is occupying alying front posture state.

In some examples, posture state module 86 may determine whether patient12 is generally in a lying posture state based on the relationship of asensed vector to upright reference vector 167. For example, as describedabove, a lying posture donut or toroid may be defined with respect toupright posture reference vector 167, e.g., using angles D and E as inFIG. 8B. Such a technique may be appropriate when lying posturereference vectors 159, 161, 163, 165 define a common plane substantiallyorthogonal to upright posture reference vector 167. However, the lyingposture reference vectors 159, 161, 163, 165 may not in fact beorthogonal to the upright reference coordinate vector 167. Also, thelying posture reference vectors 159, 161, 163, 165 may not reside in thesame plane.

To account for non-orthogonal reference vectors, in other examples, alying posture donut or toroid may be defined with respect to a modifiedor virtual upright reference vector 169 rather than that actual uprightposture reference vector 167. Again, such a technique may be used insituations in which the lying reference vectors 159, 161, 163, 165 arenot in a common plane, or the common plane of reference vector 159, 161,163, 165 is not substantially orthogonal to upright reference vector167. However, use of the example technique is not limited to suchsituations.

To define virtual upright reference vector 169, posture state module 86may compute the cross-products of various combinations of lyingreference vectors 159, 161, 163, 165 and average the cross productvalues. In the example of FIG. 8C, posture state module 86 may computefour cross products and average the four cross product vectors to yieldthe virtual upright vector. The cross product operations that may beperformed are: lying left vector 159×lying back vector 165, lying backvector 165×lying right vector 161, lying right vector 161×lying frontvector 163, and lying front vector 163×lying left vector 159. Each crossproduct yields a vector that is orthogonal to the two lying referencevectors that were crossed. Averaging each of the cross product vectorsyields a virtual upright reference vector that is orthogonal to lyingplane 171 approximately formed by lying reference vectors 159, 161, 163,165.

Using virtual upright reference vector 169, posture state module 86 maydefine a lying posture donut or toroid in a manner similar to thatdescribed with respect to upright reference vector 167, but instead withrespect to virtual upright reference vector 169. In particular, whenposture state module 86 determines that the patient is not in theupright posture, the posture state module determines whether the patientis in a lying posture based on an angle or cosine value with respect tothe virtual upright reference vector 169.

Posture state module 86 may still determine whether patient 12 is in anupright posture state using upright posture cone 157. If posture statemodule 86 determines that patient 12 is occupying a general lyingposture state based on the analysis of the sensed coordinate vector withrespect to virtual upright reference vector 169, posture state module 86may then calculate the cosine value of the sensed coordinate vector (ashypotenuse) with respect to each lying reference coordinate vectors 159,161, 163, 165 (as adjacent).

In such a case, posture state module 86 determines the particular lyingposture state of patient 12, i.e., lying left, lying right, lying front,lying back, based on which cosine value is the greatest of the fourcosine values. For example, if the cosine value calculated with thelying front reference vector 163 is the largest value of the four cosinevalues, the sensed vector may be considered closest in proximity tolying front reference vector out of the four total reference vectors159, 161, 163, 165. Accordingly, posture state module 85 may determinethat patient 12 is occupying a lying front posture state.

Additionally, posture state definitions are not limited to posturecones. For example, a definition of a posture state may involve aposture vector and a tolerance, such as a maximum distance from theposture vector. So long as a detected posture vector is within thismaximum distance from the posture vector that is included in thedefinition of the posture state, patient 12 may be classified as beingin that posture state. This alternative method may allow posture statesto be detected without calculating angles, as is exemplified above inthe discussion related to posture cones.

Further to the foregoing, posture states may be defined that arespecific to a particular patient's activities and/or profession. Forinstance, a bank teller may spend a significant portion of his workingday leaning forward at a particular angle. A patient-specific “LeaningForward” posture state including this angle may be defined. The coneangle or other tolerance value selected for this posture state may bespecific to the particular posture state definition for this patient. Inthis manner, the defined posture states may be tailored to a specificuser, and need not be “hard-coded” in the IMD.

In some examples, individual posture states may be linked together,thereby tying posture states to a common set of posture reference dataand a common set of therapy parameter values. This may, in effect, mergemultiple posture cones for purposes of posture state-based selection oftherapy parameter values. For example, all lying posture state cones(back, front, left, right) could be treated as one cone or adonut/toroid, e.g., using a technique the same as or similar to thatdescribed with respect to FIGS. 8B and 8C to define a donut, toroid orother volume. One program group or common set of therapy parametervalues may apply to all posture states in the same merged cone,according to the linking status of the posture states, as directed viaexternal programmer 20.

Merging posture cones or otherwise linking a plurality of posture statestogether may be useful for examples in which a common set of therapyparameter values provides efficacious therapy to patient 12 for theplurality of posture states. In such an example, linking a plurality ofposture states together may help decrease the power consumption requiredto provide posture-responsive therapy to patient 12 because thecomputation required to track patient posture states and provideresponsive therapy adjustments may be minimized when a plurality ofposture states are linked together.

Linking of posture states also may permit a therapy parameter valueadjustment in one posture state to be associated with multiple posturestates at the same time. For example, the same amplitude level for oneor more programs may be applied to all of the posture states in a linkedset of posture states. Alternatively, the lying down posture states mayall reside within a “donut” or toroid that would be used instead ofseparate comes 156 and 158, for example. The toroid may be divided intosectional segments that each correspond to different posture states,such as lying (back), lying (front), lying (right), lying (left) insteadof individual cones. In this case, different posture reference data andtherapy parameter values may be assigned to the different sectionalsegments of the toroid.

FIG. 9 is a conceptual diagram illustrating an example user interface168 of a patient programmer 30 for delivering therapy information topatient 12. In other examples, a user interface similar to userinterface 168 may also be presented by clinician programmer 60. In theexample of FIG. 9, display 36 of patient programmer 30 provides userinterface 168 to the user, such as patient 12, via screen 170. Screen170 includes stimulation icon 174, IMD battery icon 176, programmerbattery icon 178, navigation arrows 180, automatic posture response icon182, group selection icon 184, group identifier 186, program identifier188, amplitude graph 190, and selection box 192. User interface 168provides information to patient 12 regarding group, program, amplitude,and automatic posture response status. User interface 168 may beconfigurable, such that more or less information may be provided topatient 12, as desired by the clinician or patient 12.

Selection box 192 allows patient 12 to navigate to other screens,groups, or programs using navigation arrows 180 to manage the therapy.In the example, of screen 170, selection box 192 is positioned so thatpatient 12 may use arrows 44 and 48 (FIG. 2) of control pad 40 ofprogrammer 30 to move to the automatic posture response screen, thevolume screen, the contrast or illumination screen, the time screen, andthe measurement unit screen of patient programmer 30. In these screens,patient 12 may be able to control the use of the automatic postureresponse feature and adjust the patient programmer 30 features. Patient12 may only adjust the features surrounded by selection box 192.

Group identifier 186 indicates one of possibly several groups ofprograms that can be selected for delivery to patient 12. Groupselection icon 184 indicates whether the displayed group, e.g., group Bin FIG. 9, is actually selected for delivery to patient 12. If apresently displayed group is selected, group selection icon 184 includesa box with a checkmark. If a presently displayed group is not selected,group selection icon 184 includes a box without a checkmark. To navigatethrough the stored program groups, a user may use control pad 40 to moveselection box 192 to select the group identifier 186 and then usecontrol pad 40 to scroll through the various groups, e.g., A, B, C, andso forth. IMD 14 may be programmed to support a small number of groupsor a large number of groups, where each group contains a small number ofprograms or a large number of programs that are deliveredsimultaneously, in sequence, or on a time-interleaved basis.

For each group, group selection icon 184 indicates the appropriatestatus. For a given group, program identifier 188 indicates one of theprograms associated with the group. In the example of FIG. 9, no programnumber is indicated in program identifier 188 because all of theprograms' amplitudes are shown in each bar of amplitude graph 190. Solidportions of the bars indicate the relative amplitude IMD 14 currently isusing to deliver stimulation therapy to patient 12, while open portionsof the bars indicate the remaining amplitude available to each program.In some examples, numerical values of each program's amplitude may beshow in addition to or in place of amplitude graph 190. In otherexamples of user interface 168 specific to drug delivery using IMD 26,amplitude graph 190 may show the flow rate of drugs or frequency ofbolus delivery to patient 12. This information may be show in numericalformat as well. Patient 12 may encompass group selection icon 184 withselection box 192 to scroll between the different programs of theselected group.

Automatic posture response icon 182 indicates that IMD 14 is generallyactivated, such that processor 80 automatically modifies therapy topatient 12 based upon the posture state detected by posture state module86. In particular, automatic posture responsive therapy may involveadjusting one or more therapy parameter values, selecting differentprograms or selecting different program groups based on the detectedposture state of the patient. However, automatic posture response icon182 is not present next to group identifier 186, indicating that group“B” does not have automatic posture responsive therapy activated for anyof the programs within group “B.”

Some groups or individual programs in groups may support automaticposture responsive therapy. For example, automatic adjustment of one ormore therapy parameter values in response to posture state indicationmay be selectively activated or deactivated based on settings entered bya clinician, or possibly patient 12. Hence, some programs or groups maybe configured for use with posture responsive therapy while otherprograms or groups may not be configured for use with posture responsivetherapy. In some cases, if posture responsive therapy supported by theautomatic posture response feature is desired, patient 12 may need toswitch therapy to a different group that has automatic postureresponsive therapy activated for IMD 14 to adjust therapy according tothe patient 12 posture state.

FIG. 10 is a conceptual diagram illustrating an example user interface168 of a patient programmer 30 for delivering therapy information thatincludes posture information to the patient. In other examples, userinterface 168 may also be shown on clinician programmer 60. In theexample of FIG. 10, display 36 of patient programmer 30 provides userinterface 168 to the user, such as patient 12, via screen 194. Screen194 includes stimulation icon 174, IMD battery icon 176, programmerbattery icon 178, and automatic posture response icon 182, similar toscreen 170 of FIG. 9. In addition, screen 194 includes group selectionicon 184, group identifier 186, supplementary posture state indication202, program identifier 196, posture state indication 200, amplitudevalue 204, selection box 192, and selection arrows 180. User interface168 provides information to patient 12 regarding group, program,amplitude, automatic posture response status, and posture stateinformation. More or less information may be provided to patient 12, asdesired by the clinician or the patient.

Group identifier 186 indicates that group “B” is active, and automaticposture response icon 182 indicates group “B” (containing one or moreprograms) is activated to allow IMD 14 to automatically adjust therapyaccording to the patient 12 posture state. In the example shown in FIG.10, user interface 168 indicates the posture state determined by IMD 14,e.g., via posture state indication 200 and supplementary posture stateindication 202. Program identifier 196 illustrates that informationregarding program “1” of group “B” is displayed on screen 194, such asamplitude value 204 illustrating the current voltage amplitude ofprogram “1” is 2.85 Volts. Patient 12 may scroll through differentprograms of the group by using navigation arrows 180 via arrows 44 and48 of control pad 40.

In addition, posture state indication 200 shows that IMD 14 is detectingthat patient 12 is in the upright or standing posture based on theoutput of posture state module 86 (FIG. 4A). Supplementary posture stateindication 202 supplements posture state indication 200 by explaining inwords to patient 12 the exact posture being detected by posture statemodule 86 of IMD 14. Posture state indication 200 and supplementaryposture state indication 202 presented via user interface 168 changeaccording to the sensed, or detected, posture state detected by IMD 14.The posture state may be communicated to the external programmerimmediately after IMD 14 detects a posture change, or communicatedperiodically or non-periodically by IMD 14 unilaterally or uponreceiving a request from the programmer. Accordingly, the posture stateindication 200 and/or supplementary posture state indication 202 mayrepresent a current, up-to-the minute status, or a status as of the mostrecent communication of posture state from IMD 14. Posture stateindication 200 is shown as a graphical representation, but the posturestate indication may alternatively be presented as any one of a symbolicicon, a word, a letter, a number, an arrow, or any other representationof the posture state. In some cases, posture state indication 200 may bepresented without supplementary posture state indication 202.

Selection box 192 indicates that patient 12 view other programs withingroup “B” using selection arrows 180. Selection box 192 may be moved toselect other screen levels with control pad 40 (FIG. 2) of patientprogrammer 30 in order to navigate through other stimulation groups oradjustable elements of the therapy. When patient 12 selects a differentprogram with control pad 40, program identifier 196 is updated tocorrectly identify the current program viewed on screen 194.

In addition to graphical, textual or other visible indications ofposture state, the external programmer may present audible and/ortactile indications of posture state via any of a variety of audible ortactile output media. An audible indication may be spoken words statinga posture state, or different audible tones, different numbers of tones,or other audible information generated by the programmer to indicateposture state. A tactile indication may be, for example, a somatosensoryindication, such as a different numbers of vibratory pulses delivered insequence or vibratory pulses of different lengths, amplitudes, orfrequencies.

As previously described, examples of the present disclosure relate tosystems and techniques for generating baseline patient information basedon patient data corresponding to one or more periods of time in whichthe patient is not receiving posture-responsive therapy. The patientdata may include one or more of posture state data indicative of aplurality of patient posture states during the respective period of timeand therapy adjustment data indicative of therapy adjustments made bypatient 12 during the respective time period. The generated baselinepatient information may be compared posture-responsive patientinformation, i.e., patient information generated based on patient datacorresponding to one or more time period in which posture-responsivetherapy is delivered to the patient from a medical device. In someexamples, the comparison of baseline and posture-responsive patientinformation may allow a medical device, such as IMD 14, or a user, suchas a clinician and/or patient, to evaluate the efficacy ofposture-responsive therapy delivered to the patient.

FIG. 11 is a flow diagram illustrating an example technique forgenerating baseline and posture-responsive patient information. Forpurposes of illustration, the example technique is described withrespect to system 10 of FIG. 1A although such a technique may beutilized by any suitable medical system or device configured to deliverytherapy to a patient according to the detected patient posture state.Moreover, while the example technique of FIG. 11 is described withrespect to external programmer 20, examples are not limited as such. Forexample, programmer 30, programmer 60 or any other suitable device maybe used to perform all or a portion of the example of FIG. 11. In someaspects, the patient data in the example of FIG. 11 is described withrespect to posture state data indicative of the posture states ofpatient 12 during a first and second time period. However, in someexamples, the patient data may additionally or alternatively includetherapy adjustment information indicative of therapy adjustment made bypatient 12 during the first and second time periods.

In the example of FIG. 11, programmer 20 acquires first posture statedata indicative of the posture state of patient 12 during a first timeperiod in which patient 12 did not receive posture-responsive therapyfrom IMD 14 (206). In general, the first time period may correspond to aperiod of time in which IMD 14 is not delivering stimulation therapy topatient 12 according to the posture state of patient 12. For example,during the first time period, IMD 14 may not deliver any type ofstimulation to patient 12 or IMD 14 may deliver stimulation therapy butnot according to the posture state of patient 12 detected via posturestate module 86.

In some examples, programmer 20 may acquire the first posture state datafrom external sensor 15. As described above, in some examples, externalsensing device 15 may monitor the posture state of patient 12 viaposture state module 87 during a first time period when IMD 14 is notdelivering posture-responsive therapy to patient 12. External sensingdevice 15 may store the posture state data 85 generated from posturestate module 87 while monitoring the posture state of patient 12 inmemory 85. Programmer 20 may retrieve the stored posture state data 85from external sensing device 15 using telemetry circuitry 93, 110.

Alternatively or additionally, programmer 20 may acquire the firstposture state data from IMD 14. As described above, in some examples,IMD 14 may monitor the posture state of patient 12 via posture statemodule 86 during a first time period when IMD 14 is not deliveringposture-responsive therapy to patient 12. While monitoring the posturestate of patient 12, IMD 14 may be implanted within patient 12 or may belocated external to patient 12, e.g., functioning as an external trialstimulation device. Similar to that of external sensing device 15, IMD14 may store the patient data 83 generated from posture state module 86while monitoring the posture state of patient 12 in memory 82. Toacquire the posture state data, programmer 20 may retrieve the storedpatient data 83 from IMD 14 using telemetry circuitry 88, 110.

Programmer 20 may periodically acquire the stored posture state datafrom IMD 14 and/or external sensing device 15 during the first timeperiod, or may acquire the stored posture state data after the firsttime period has ended. Upon acquiring the first posture state data,programmer 20 may store the first posture state data acquired from IMD14 and/or external sensing device 15 in memory 108 for subsequentanalysis.

Using all or a portion of the first posture state data acquired from IMD14 and/or external sensing device 15, processor 104 (FIG. 6) ofprogrammer 20 may generate baseline patient information (208). In someexamples, the baseline patient information includes one or more ofbaseline posture state information or baseline therapy adjustmentinformation. Baseline postures state information may include baselineproportional posture state information, baseline sleep qualityinformation, or baseline posture state adjustment information. Baselinetherapy information may include the number of therapy adjustmentsreceived over all or a portion of the first time period. Since thebaseline patient information in FIG. 11 is generated based on the firstposture state data, the baseline patient information provides referenceposture state information representative of the behavior and habits ofpatient 12 in terms of posture state during a period of time in whichpatient 12 is not receiving posture-responsive therapy from IMD 14.Accordingly, the generated baseline patient information may facilitatethe evaluation of the efficacy of posture responsive therapy byproviding a baseline with which posture-responsive patient informationmay be compared.

To generate posture-responsive patient information, programmer 20 mayacquire second posture state data, which is indicative of the posturesstate of patient 12 during a second time period in which IMD 14 deliversposture-responsive therapy to patient 12 (210). In particular, duringthe second time period, IMD 14 may detect the posture state of patient12 and deliver stimulation therapy to patient 12 according to thedetected posture state.

Programmer 20 may acquire the second posture state data from IMD 14 orexternal sensing device 15 in a manner the same or similar to thatdescribed with respect to the acquisition of first posture state data.In some examples, programmer 20 may acquire the second posture statedata from IMD 14 since IMD 14 is monitoring the posture state of patient12 in conjunction with the delivery of posture-responsive therapy topatient 12. IMD 14 may store the posture state data from posture statemodule 86 in memory 82. All or a portion of the posture state data maybe retrieved from IMD 14 by programmer 20 using telemetry circuits 88,110. Additionally or alternatively, programmer 20 may acquire the secondpostures state data from external sensing device 15, which may also bemonitoring the patient posture state during the time period that IMD 14is delivering posture-responsive therapy from IMD 14. External sensingdevice may store the posture state data from posture state module 87 inmemory 85. All or a portion of the posture state data may be retrievedfrom external sensing device 15 by programmer 20 using telemetrycircuits 93, 110.

In some examples, programmer 20 acquires the second posture state datafrom the same device that the first posture state data was acquired. Forexample, if programmer 20 acquired the first posture state data fromexternal sensor 15, then programmer 20 may also acquire the secondposture state data from external sensor 15. As another example, ifprogrammer 20 acquired the first posture state data from IMD 14, thenprogrammer 20 may also acquire the second posture state data from IMD14. In this manner, the first and second posture state data may beconsistent with one another at least to the extent that the respectivedata was generated by the same posture sensors and posture state module,e.g., posture state module 86 or posture state module 87. However, inother examples, IMD 14 may acquire the first and second posture statedata from different devices. For example, IMD 14 may acquire the firstposture state date from external sensing device 15 and second posturestate data from IMD 14, especially in cases in which IMD 14 was notoperating to monitor the posture state of patient 12 during all or aportion of the first time period. In still other examples, programmer 20may acquire the first and/or second posture state data from multipledevices, e.g., from both IMD 14 and external sensing device 15. However,programmer 20 may not use all the acquired posture state data ingenerating the baseline and/or posture-responsive patient information.

In general, the first and second posture state data acquired byprogrammer 20 is data indicative of the posture state of patient 12during the first and second time periods, respectively. For example, insome cases, the posture state data may include specific information asto the posture states of patient 12 throughout the first time period asdetected by posture state module 86 of IMD 14 and/or posture statemodule 87 of external sensing device 15. For example, posture statemodule 86 may receive one or more posture sensor signals from posturesensor(s) on or within patient 12 and detect patient posture state basedon the received sensor signal(s), e.g., using one or more posturedetection techniques described with regard to FIGS. 8A-8C. Theparticular posture states detected by posture state module 86 may thenbe stored as patient data 83 within memory 82 and subsequently acquiredby programmer 20. In other examples, the posture state data acquired byprogrammer 20 from IMD 14 and/or external sensing device 15 may includeinformation regarding the one or more posture sensor signals, e.g., rawsensor signal data, received by posture state modules 86 or 87 without aparticular posture state determination. In such a case, programmer 20may acquire posture state data including the posture sensor signal data,and processor 104 of programmer 20 may then determine the one or moreposture states of patient 12 which corresponds to the acquired sensorsignal data, e.g., using one or more posture detection techniquesdescribed with regard to FIGS. 8A-8C.

Referring still to FIG. 11, processor 104 (FIG. 6) of programmer 20 maygenerate posture-responsive patient information based on the secondposture state data acquired from IMD 14 and/or external sensing device15 (212). For purposes of comparison, the posture-responsive patientinformation may be consistent with that of the baseline patientinformation. For example, if the baseline patient information generatedbased on the first posture state data includes baseline posture stateinformation, such as, baseline sleep quality information, then processor104 may generate posture-responsive sleep quality information based onthe second patient data.

Patient information, whether it be baseline or posture-responsive, mayinclude posture state information. Posture state information mayobjectify one or more aspects of a patient's posture state during therespective time period. For example, the baseline posture stateinformation may include, but is not limited to, the number of posturestate transitions a patient has undertaken during the first period oftime, the relative amount of time a patient has occupied one or moreposture states during the first period of time, the number of posturestate transitions that a patient has undertaken while in a general lyingposture states, and the like.

By objectifying the patient's posture state during one or more timeperiods using posture state data, the posture state information may berepresentative of the patient's posture state behavior during all orportions of the one or more time periods during which the patient'sposture state was monitored. Such patient information may facilitate theevaluation of a patient's movement during one or more time periods in amanner beyond that of evaluation based on a patient's subjective inputof his/her posture state during the one or more time periods. Inparticular, baseline posture state information that is generated basedon posture state date indicative of a patient's posture state over aperiod of time that the patient is not receiving posture-responsivetherapy may be representative of the patients posture state behaviorwhen the patient is not receiving posture-responsive therapy. Likewise,posture-responsive posture state information that is generated based onposture state data indicative of a patient's posture state over a periodof time that the patient is receiving posture-responsive therapy may berepresentative of the patient's posture state behavior when the patientis receiving posture-responsive therapy.

In some examples, posture state information generated by programmer 20or any other suitable device includes proportional posture stateinformation. Proportional posture state information generated fromposture state data from any given period of time may illustrate therelative amount of time that a patient occupied each of one or moreposture states over that time period. Accordingly, baseline proportionalposture information generally illustrates the relative amount of timethat a patient occupied each of one or more postures states during atime period in which the patient is not receiving posture-responsivetherapy. In the example of FIG. 11, processor 104 of external programmer30 may analyze the acquired first posture state data to generatebaseline proportional posture information for patient 12 for one or moreportions of the first time period. Likewise, posture-responsiveproportional posture information generally illustrates the relativeamount of time that a patient occupied each of one or more posturesstates during a time period in which the patient is receivingposture-responsive therapy. In the example of FIG. 11, processor 30 mayanalyze the acquired second posture state data to generateposture-responsive proportional postures state information for patient12 for one or more portions of the second time period.

In some examples, posture state information includes sleep qualityinformation. Sleep quality information generated by programmer 20 orother suitable device from posture state data may include the number oftimes a patient has transitioned between lying down postures in a giventime period or the number of times a patient transitioned from eachposture state. Accordingly, baseline sleep quality information maygenerally correspond to the number of times a patient has transitionedbetween lying down postures or the number of times a patienttransitioned from each posture state during a time period in which thepatient is not receiving posture-responsive therapy. In the example ofFIG. 11, processor 104 of external programmer 30 may analyze theacquired first posture state data to generate baseline sleep qualityinformation for patient 12 for one or more portions of the first timeperiod. Likewise, posture-responsive sleep quality information maygenerally correspond to the number of times a patient has transitionedbetween lying down postures or the number of times a patienttransitioned from each posture state during a time period in which thepatient is receiving posture-responsive therapy. In the example of FIG.11, processor 30 may analyze the acquired second posture state data togenerate posture-responsive sleep quality information for patient 12 forone or more portions of the second time period.

In some examples, the posture state information may include posturestate adjustment information. Posture state adjustment informationgenerated by programmer 20 or other suitable device from posture statedata may include the number of posture state adjustments made during oneor more time intervals during a particular time period. Accordingly,baseline posture state adjustment information may generally representthe number of posture state adjustments that a patient has made during atime period in which the patient is not receiving posture-responsivetherapy. In the example of FIG. 11, processor 104 of external programmer30 may analyze the acquired first posture state data to generatebaseline posture state adjustment information for patient 12 for one ormore portions of the first time period. Likewise, posture-responsiveposture state adjustment information may generally represent the numberof posture state adjustments that a patient has made during a timeperiod in which the patient is receiving posture-responsive therapy. Inthe example of FIG. 11, processor 30 may analyze the acquired secondposture state data to generate posture-responsive posture stateadjustment information for patient 12 for one or more portions of thesecond time period.

Additionally or alternatively, patient information, whether it bebaseline or posture-responsive, may include therapy adjustmentinformation. Therapy adjustment information may be generated based ontherapy adjustment data indicative of therapy adjustments made bypatient 12. A patient therapy adjustment may be made by a patient byselecting or adjusting one or more parameter values for a currentprogram, e.g., via a patient programmer. For example, an adjustment maybe made to one or more of an amplitude, a pulse width, a pulse rate, anelectrode combination, or an electrode polarity. In addition, a therapyadjustment may be entered by patient 12 simply selecting a differenttherapy program to determine the stimulation therapy that is applied. Inresponse to a patient therapy adjustment, IMD 14 may apply the patienttherapy adjustment to therapy that is delivered to the patient 12.However, IMD 14 may apply the patient therapy adjustment on a temporarybasis while patient 12 resides in the posture state. The next time thatpatient 12 occupies the posture state, IMD 14 may again apply theexisting therapy parameters for the posture state according to theestablished posture state-responsive therapy programming. In this case,patient 12 may again enter patient therapy adjustments, if desired ornecessary to achieve better efficacy.

The therapy adjustments may be made by patient 12 to modify one or moreparameters of therapy delivered in a posture state-responsive therapymode in order to enhance efficacy. An analysis of the number of therapyadjustments by a clinician may provide objectification information aboutthe efficacy of the posture state-responsive therapy delivered topatient 12. Furthermore, an analysis of the number of therapy adjustmentmade during a time period during which posture-responsive therapy wasdelivered compared to that of the number of therapy adjustments madeduring time period that posture-responsive therapy was delivered mayprovide objective information about the efficacy of posture-responsivetherapy, at least to the extent that the posture-responsive therapyinfluence the amount of therapy adjustments required of a patient. Forexample, an increase in the number of patient adjustments to therapyparameters during posture-responsive may indicate that the level oftherapeutic efficacy provided by the posture-responsive therapy isinsufficient, in addition to increasing the amount of therapyadjustments required by patient 12. A reduction in the number ofadjustments made by a user during posture-responsive therapy compared tothat of a baseline period made provide an objective indication that theposture-responsive therapy may be successful since the therapy deliveredto patient 12 during posture-responsive therapy required less patienttherapy adjustments.

Examples of objective information that may be used as patientinformation may include one or more examples described in co-pendingU.S. patent application Ser. No. ______ to Skelton et al., filed on thesame date as the present application and entitled “DATA ANALYSIS FORPOSTURE RESPONSIVE THERAPY” (attorney docket no.1023-794US01/P0032957.01); and co-pending U.S. Provisional PatentApplication Ser. No. 61/080,000, to Skelton, et al., filed Jul. 11,2008, titled “DATA ANALYSIS FOR POSTURE RESPONSIVE THERAPY”. The entirecontent of each of these applications is incorporated herein byreference.

In any case, in the example of FIG. 11, once programmer 20 has generatedboth baseline patient information and posture-responsive patientinformation, external programmer 20 compares the generated baselinepatient information to the posture-responsive patient information (214).The comparison of the baseline patient information to theposture-responsive patient information may facilitate the evaluation ofthe efficacy of posture-responsive therapy by illustrating thedifferences, if any, between the posture state behavior of a patientwhen they are receiving posture-responsive therapy and when they are notreceiving posture-responsive therapy.

The differences between the baseline patient information andposture-responsive patient information may be attributed to the deliveryof posture-responsive therapy, thereby facilitating the evaluation ofthe posture-responsive therapy. For example, if a statisticallysignificant difference is determined to exist between the respectivepatient information, the posture-responsive therapy may be consideredrelatively effective, at least to the extent that the observed change inposture state behavior is considered an improvement. Conversely, ifsubstantially no difference is determined to exist between therespective patient information or the difference is relatively minimal,the posture-responsive therapy may be considered relatively ineffective,or effective at least to the extent that posture-responsive therapyreduces the amount of programming, e.g., manual therapy adjustments,that patient 12 must perform.

In some examples, external programmer 20 may compare the baselinepatient information to posture-responsive patient information bypresenting some or all aspects of the baseline and posture-responsivepatient information to a user via user interface 106 (FIG. 6). Userinterface 106 may present both the baseline and posture-responsivepatient information using any suitable graphical or numerical form. Forexample, baseline and posture-responsive proportional postureinformation may each be presented in graphs showing the percentage oftime patient 12 engaged in each posture state over the baseline andposture-responsive time periods, based on the posture state dataacquired from IMD 14 and/or external sensing device 15. FIG. 13illustrates one example of the presentation of baseline proportionalposture state information and posture-responsive proportional posturestate information by external programmer 20 to compare the baseline andposture-responsive proportional posture state information generated fromposture state data acquired form IMD 14 and/or external sensing device15.

In some examples, rather than simply presenting baseline patientinformation and posture-responsive patient information to user via userinterface 106, processor 104 may analyze the baseline with respect tothe posture-responsive patient information to quantify one or moredifferences between the baseline and posture-responsive patientinformation. For examples, processor 106 may determine an overallpercent difference between a posture state variable, such as patientposture adjustments or patient therapy adjustments, by comparing thebaseline and posture-responsive patient information. Such informationmay then be presented to a user via user interface 106. Processor 106may apply any suitable statistical techniques to compare the baselineand posture-responsive patient information in a manner that facilitatesevaluation of the posture-responsive therapy, e.g., by determining oneor more differences between the baseline and posture-responsive patientinformation.

Based on the comparison of the baseline and posture-responsive posturesstate information, one or more aspects of posture-responsive therapy maybe adjusted. In some examples, by presenting both the baseline andposture-responsive patient information (or the difference between therespective patient information) to a user such as a clinician orpatient, the user may determine that it is desirable to adjust one ormore stimulation therapy parameters and implement the desired adjustmentby communicating with IMD 14 via external programmer 20. For example,based on the comparison of the baseline patient information andposture-responsive patient information, a user may indicate toprogrammer 20 that posture-responsive therapy should be turned off.Programmer 20 may then generate and send an indication consistent withthe user input to IMD 14, which may then turn off the posture-responsiveaspect of the therapy delivered to patient 12. A similar approach may beused by a user to adjust one or more stimulation parameter values oreven one or more aspects of the posture state detection technique usedby posture state module 86 to detect the posture state of patient 12.

Alternatively or additionally, IMD 14 or programmer 20 may be configuredto automatically or semi-automatically (e.g., with user confirmation)adjust one or more aspects of the therapy delivered by IMD 14 to patient12 based on the comparison of the baseline patient information to theposture-responsive patient information. For example, processor 80 of IMD14 or processor 105 of programmer 20 may analyzed the generated baselineand posture-responsive patient information to determine one or moredifference between the patient information. Based on the differences, ifany, between the baseline and posture-responsive patient information,one or more aspects of therapy may be automatically orsemi-automatically adjusted. For example, if the comparison of baselineand posture-responsive patient information indicates no differencebetween a patient's posture state or therapy adjustment behavior whenposture-responsive therapy is and is not delivered, then processor 80 ofIMD 14 may adjust one or more therapy parameters, such as stimulationamplitude, or may modify the posture detection technique used by posturestate module 86 to detect patient posture state in a manner designed toelicit some change in the patient's posture state or therapy adjustmentbehavior.

As another example, if processor 80 determines that the differencebetween the baseline and posture-responsive patient information areindicative of an undesirable change in the patient's posture statebehavior during delivery of posture-responsive therapy (e.g., the numberof posture state adjustment made by a patient has drastically decreasedsince posture-responsive therapy has been delivered or patient therapyadjustments have increased), processor 80 may automatically turn-off theposture-responsive aspect of the therapy deliver to patient 12 via IMD14. Conversely, processor 80 may turn posture responsive stimulationtherapy back on, e.g., if baseline patient information generated frompatient data from a time period after the posture-responsive therapy hasbeen turned off indicates that a patient's posture state or therapyadjustment behavior has undesirably changed since posture-responsivetherapy has been turned off. In some cases, processor 104 of externalprogrammer 20 may compare and analyzed the patient information asdescribed, and then communicate with IMD 14 to implement the one or moredesired adjustments. In any case, system 10 may generate baselinepatient information and automatically or semi-automatically adjust oneor more aspects of therapy delivered to patient 12 by IMD 14 based on acomparison of the baseline patient information to posture-responsivepatient information.

Programmer 20 may store one or more of the acquired patient data,generated baseline and posture-responsive patient information, andinformation associated with the comparison of the baseline patientinformation and posture-responsive patient information within memory108. In this manner, processor 104 may access the information stored inmemory 108 at later time, e.g., based on input received from a userindicating that the user would like programmer 20 to present acomparison of the stored baseline and posture-responsive patientinformation in one form or another. In some examples, processor 104 mayaccess the stored patient data and/or patient information to updatepatient data and/or information based on new patient data acquired formIMD 14 or external sensing device 15.

Although in the example technique of FIG. 11 programmer 20 acquires thepatient data from IMD 14 and/or external sensing 15, and then generatesbaseline and posture-responsive patient information based on theacquired patient data, examples are not limited to such a configuration.For example, in some examples, rather than external programmer 20acquiring patient data and generating patient information, processor 80of IMD 14 (FIG. 4A) and/or processor 81 of external sensing device 15(FIG. 4B) may acquire patient data, e.g., from memory 82 and memory 85,respectively, and also generate baseline and/or posture-responsivepatient information based on the acquired patient data. In such a case,IMD 14 and/or external sensing device 15 may send the generated baselineand posture-responsive patient information to external programmer 20,such as, patient programmer 30 (FIG. 2) or clinician programmer 60 (FIG.3), for comparison of the generated baseline patient information to theposture-responsive information. For example, external programmer 20 maypresent the generated baseline and posture-responsive patientinformation to a user so that the user may evaluate the efficacy of theposture-responsive therapy. Alternatively or additionally, processor 80(FIG. 4A) and/or processor 81 (FIG. 4B) may compare the baseline andposture-responsive patient information, and store the comparisoninformation in memory 82 and 85, respectively. In some examples, thecomparison information may then be sent to external programmer 20, e.g.,for presentation to a user. Furthermore, as described above, in someexamples, processor 80 of IMD 14 may analyze the comparison informationand automatically or semi-automatically adjustment one or more aspectsof the stimulation therapy delivered by IMD 14 to patient 12.

FIG. 12 is a plot illustrating an example timeline 216 includingmultiple time periods 218, 220, 222, 224, 226 during which the posturestate and/or therapy adjustments of patient 12 may be monitored togenerate patient information. As will apparent from the followingdescription, during time periods 218, 220, 222, 226, patient 12 does notreceive posture-responsive therapy. Accordingly, the posture stateand/or therapy adjustments of patient 12 may be monitored during all orportions of time periods 218, 220, 222, 226, and the resulting patientdata may be used to generate baseline patient information. Conversely,during time period 224, patient 12 receives posture responsive therapyfrom IMD 14. Accordingly, the posture state and/or therapy adjustmentsof patient 12 may be monitored during all or portions of time period224, and the resulting patient data may be used to generateposture-responsive patient information. The example of FIG. 12 isdescribed with reference to external programmer 20 generating baselineand posture-responsive patient information. However, otherconfigurations are contemplated, including one or more of IMD 14,programmer 30, and programmer 60 generating patient information.

Time period 218 corresponds to a period of time during which only anexternal sensing device, such as, external sensing device 15, monitorsthe posture state of patient 12. As previously described, externalsensing device 15 is not capable of delivering stimulation therapy topatient 12, much less posture-responsive therapy. As such, patient 12generally will not make therapy adjustments during time period 218.Instead, time period 218 may be an observational period during which theposture state behavior is observed, e.g., for diagnostic purposes, byexternal sensing device 15. Accordingly, during time period 218, patient12 does not receive posture-responsive therapy, and the patient datafrom external sensing device 15 during time period 218 may be used byprogrammer 20 to generate baseline posture state information.

After time period 218, patient 12 may receive temporary or trialstimulation therapy from an external trial stimulation device, e.g., viapercutaneously implanted stimulation leads during time period 220. Thetrial stimulation may be delivered to patient 12 during time period 220to determine whether chronic stimulation therapy may be beneficial topatient 12 before undergoing the procedure to implant a medical device,such as IMD 14. Notably, the trial stimulation provided to patient 12during time period 220 is delivered on a non-posture-responsive basis.Accordingly, during time period 220, external sensing device 15 maymonitor the posture state and/or therapy adjustments of patient 12.Additionally or alternatively, the external trial stimulation device mayinclude components necessary to monitor the posture state and/or therapyadjustments of patient 12 during time period 220. All or a portion ofthe patient data gathered by external sensing device 15 and/or theexternal stimulation device during time period 220 may be used byprogrammer 20 to generate baseline patient information.

After time period 220, IMD 14 may be implanted in patient 12. Once IMD14 is successfully implanted in patient 12, IMD 14 may begin deliveringstimulation therapy to patient 12 albeit on a non-posture-responsivebasis. For example, the therapy delivered to patient 12 from IMD 14 maybe substantially similar to that of delivered to patient 12 from theexternal trial stimulator during time period 220. In other examples,while IMD 14 has been implanted, the delivery of stimulation to patient12 may be turned off during all or a portion of time period 222.Accordingly, during time period 220, IMD 14 may monitor the posturestate and/or therapy adjustments of patient 12 via posture state module86. Additionally or alternatively, external sensing device 15 maymonitor the posture state and/or therapy adjustments of patient 12. Allor a portion of the patient data gathered by external sensing device 15and/or IMD 14 during time period 222 may be used by programmer 20 togenerate baseline patient information.

At the beginning of time period 224, IMD 14 is activated to deliverposture-responsive therapy to patient 12. For example, throughout timeperiod 224, IMD 14 may detect the posture state of patient 12 viaposture state module 86 (FIG. 4A) and adjust one or more aspects oftherapy according to the detected posture state of patient 12.Accordingly, during time period 224, IMD 14 may monitor the posturestate and/or therapy adjustments of patient 12 via posture state module86. Additionally or alternatively, external sensing device 15 maymonitor the posture state and/or therapy adjustments of patient 12during time period 224. All or a portion of the patient data gathered byexternal sensing device 15 and/or IMD 14 during time period 224 may thenbe used by programmer 20 to generate posture-responsive patientinformation. As previously described, the posture-responsive patientinformation may be compared to baseline patient information.

Time period 224 ends and time period 226 begins when theposture-response mode of IMD 14 is deactivated. From that time on,during time period 226, IMD 14 may continue to delivery stimulationtherapy to patient although IMD 14 does not deliver the therapy on aposture-responsive basis. Alternatively, IMD 14 may not deliverystimulation therapy of any sort to patient 12 during time period 226.Accordingly, during time period 226, IMD 14 may monitor the posturestate and/or therapy adjustments of patient 12 via posture state module86. Additionally or alternatively, external sensing device 15 maymonitor the posture state and/or therapy adjustments of patient 12during time period 226. All or a portion of the patient data gathered byexternal sensing device 15 and/or IMD 14 during time period 226 may thenbe used by programmer 20 to generate baseline patient information.

Overall, one or both of the posture state data indicative of the posturestate of patient 12 during time periods 218, 220, 222, 226 and therapyadjustment data indicative of patient therapy adjustments during timeperiod 218, 220, 222, 226 may be used by programmer 20 to generatebaseline patient information. In some examples, programmer 20 generatesbaseline patient information based on patient data from all or a portionof only one of time periods 218, 220, 222, 226. In other examples,programmer 20 generates baseline patient information based on acombination of patient data from all or a portion of two or more of timeperiods 218, 220, 222, 226. In some examples, programmer 20 may generateseparate baseline patient information for each of time periods 218, 220,222, 226 based on patient data from the corresponding time period. Theoverall length of the baseline time period may be any appropriatelength, and may be on the order of hours, days, and months, for example.In some examples, the baseline time period may be approximately 1 daysto approximately 1 year, such as, e.g., approximately 1 day toapproximately 1 month or approximately 1 day to approximately 1 week.

In some examples, programmer 20 may generate baseline patientinformation based on patient data corresponding to time period 226separately from that of baseline patient information based on patientdata corresponding to one or more of time period 218, 220, 222. Whileposture-responsive therapy was not delivered to patient 12 during eachof time periods 218, 220, 222, 226, time period 226 corresponds to atime period after IMD 14 has delivered posture-responsive therapy unliketime periods 218, 220, 222 which all occur prior to IMD 14 deliveringposture-responsive therapy to patient 12.

Accordingly, the two respective types of baseline patient informationmay facilitate the evaluation of posture-responsive therapy from twodifferent perspectives. For examples, while both types of baselinepatient information may be generally used to illustrate differences inthe posture state and therapy adjustment behavior of patient 12 withposture-responsive therapy active compared to inactive, baseline patientinformation generated from patient data from all or a portion of timeperiod 226 may be compared to posture-responsive patient information toillustrate the residual effect that posture-responsive therapy has apatient's posture state and therapy adjustment behavior. For examples, auser such a clinician may be able to compare posture-responsive patientinformation to baseline patient information from time period 226 on adynamic basis to gauge the relative amount of time that a patientexperiences the affects of posture-responsive therapy in one form oranother after the posture-responsive therapy has been deactivated.

As previously described with regard to FIGS. 8A-8C, a variety oftechniques may used by posture state module 86 of IMD 14 duringposture-responsive therapy to detect the posture state of patient 12based on sensed posture sensor signals. In some cases, prior to theimplantation of IMD 14 and detection of patient posture state viaposture state module 86, the posture detection technique used to deliverposture-therapy to patient 12 may be undecided. Accordingly, it may bedesirable for the posture state of patient 12 prior to time period 224(e.g., during one or more of time periods 218, 220, 222) to be monitoredin a manner to account for this unknown variable.

For purposes of illustration, a scenario may be imagined in whichposture state sensor signal may be processed by posture state module 86of IMD 14 according to a first posture detection algorithm or a secondposture detection algorithm to detect the posture state of patient 12.However, it may be unknown which of the first or second posturedetection algorithms most accurately detect the posture state of patient12 until IMD 14 is implanted in patient 12 and the posture state module86 is actively detecting the posture state of patient 12. Additionally,in some cases, although posture state module 86 may begin detecting theposture state of patient 12 using the first algorithm, at some latertime, an adjustment may be made such that posture state module 86 detectthe patient posture state using the second posture detection algorithm.

Therefore, to provide posture state data for time periods 218, 220, 222that is consistent with the posture state data from IMD 14 during timeperiod 224, external sensing device 15 and/or IMD 14 may store posturestate data for patient 12 using both the first and second detectionalgorithms to detect the posture state of patient 12 via posture statemodule 87. Then, once it is determined which posture detection algorithmthat IMD 14 will use to deliver posture-responsive therapy to patient 12during time period 224, processor 104 of programmer 20 may acquire theposture state data corresponding to the selected detection algorithmfrom external sensing device 15 and/or IMD 14, and generate baselineposture state information based on that posture state data.

Alternatively or additionally, external sensing device 15 and/or IMD 14may store sensor signal information from time periods 218, 220, 222, inmemory 85, 82. In such an example, once it is determined which posturedetection algorithm that IMD 14 will use to deliver posture-responsivetherapy to patient 12 during time period 224, the stored sensor signalsmay be analyzed, e.g., by one or more of processors 80, 81, 104, usingthe selected posture state detection algorithm. Posture stateinformation may then be generated based on posture state data indicativeof the posture states of patient 12 detected using the same posturedetection algorithm used by IMD 14 to deliver posture-responsivetherapy. In either case, such a process may allow the baseline posturestate information and posture-responsive posture state information maybe consistent with each other, at least to the extent that the sameposture state detection algorithm was used to detect patient posturestate regardless of the time period the posture state was monitored bysystem 10.

FIG. 13 is a conceptual diagram illustrating an example user interface228 for presenting a comparison of baseline proportional postureinformation to posture-responsive proportional posture information. Userinterface 228 is described as being displayed by external programmer 20.However, user interface 228 may also be displayed by patient programmer30, clinician programmer 60, or some other external device. In any case,user interface 228 displays baseline and posture-responsive patientinformation generated based on posture state data indicative of theposture state of patient 12 during time periods when posture-responsivetherapy is and is not, respectively, delivered by IMD 14 to patient 12.

In the example of FIG. 13, screen 230 of user interface 228 presentspatient information graph 232 and posture state key 234. Patientinformation graph 232 displays both baseline proportional posture stateinformation and posture-responsive proportional posture stateinformation consistent with that generated by processor 104 (FIG. 6)based on posture state data acquired from IMD 14 and/or external sensingdevice 15. Patient information graph 232 includes the percentage oftime, or posture durations, for each of the baseline patient informationand posture-responsive patient information.

In the example of FIG. 13, patient information graph 232 indicates thepercentage of time during which the patient occupied each of threeposture states during a time period before posture-responsivestimulation (PRS) therapy was active and during a time period with PRStherapy active. In particular, each bar in the bar graph corresponds toone of the time intervals, and each bar includes multiple bar segments,where each segment indicates the proportional amount of time the patientoccupied a particular posture state in relation to the overall amount oftime of the baseline and posture-responsive time intervals. The timeinterval of each of the baseline time period and posture responsive maybe days, weeks, months, years, durations between two clinician sessions,or some other period of time. Each of time intervals may also be ofvarying time durations. Patient information graph 232 is generallydescribed as indicating respective percentages of time in which patient12 resides in a given posture state during a time interval. Percentages,absolute times, or other metrics may be used and obtained in variety ofways.

Screen 230 of user interface 228 may present graph 232 to a user, suchas a clinician or patient, to compare the baseline proportional posturestate information to posture-responsive proportional posture stateinformation generated by programmer 20, as described above. Graph 232may facilitate to the evaluation of the posture-responsive therapydelivered to patient 12 based on the posture state behavior of patient12 prior to delivery of posture-responsive therapy compared to that ofthe posture state behavior since the posture-responsive therapy has beenactive. As shown on patient information graph 232 for the baseline timeperiod, patient information graph 232 indicates that patient 12 was inwas in the lying down posture 80 percent of the time, the uprightposture 15 percent of the time, and the upright and active posture stateonly 5 percent of the time. As mentioned above, the lying down posturestate may include: lying front, lying back, lying right, and lying left.The upright and active posture state indicates that patient 12 wasupright in addition to being engaged in some sort of activity, such aswalking or running, as opposed to remaining stationary. In contrast,patient information graph 232 shows that in the time period sinceposture-responsive therapy has been active, patient 12 was in the lyingdown posture 45 percent of the time, the upright position 30 percent ofthe time, and the upright and active posture 20 percent of the time.Based on graph 232, a clinician or patient may recognize a trendindicating that patient 12 is in the upright posture state for a muchgreater duration after PRS therapy has been active than when compared tothe time period prior to PRS therapy being activated. In some cases, aclinician or patient may infer from such data that patient 12 may beresponding beneficially to posture-responsive therapy.

FIG. 14 is another conceptual diagram illustrating an example userinterface 236 presenting a comparison of baseline proportional postureinformation to posture-responsive proportional posture information.Similar to FIG. 13, user interface 236 is described generally as beingdisplayed by external programmer 20. However, user interface 236 mayalso be displayed by patient programmer 30, clinician programmer 60, orsome other external device. In any case, user interface 236 displaysbaseline and posture-responsive patient information generated based onposture state data indicative of the posture state of patient 12 duringtime periods when posture-responsive therapy is and is not,respectively, delivered by IMD 14 to patient 12.

In the example of FIG. 14, screen 238 of user interface 236 presentspatient information graph 240 and posture state key 242. Similar topatient information graph 232 (FIG. 13), patient information graph 240displays both baseline proportional posture state information andposture-responsive posture state information consistent with thatgenerated by processor 104 (FIG. 6) based on posture state data acquiredfrom IMD 14 and/or external sensing device.

However, unlike graph 232 (FIG. 13), patient information graph 240displays posture-responsive proportional posture information generatedfrom posture state data from to distinct two time periods since PRStherapy was activated. In particular, graph 240 includesposture-responsive proportional posture state information generated fromposture state data corresponding to the first month thatposture-responsive therapy was delivered to patient 12 and alsoposture-responsive proportional posture state information generated fromposture state data corresponding to the second month thatposture-responsive therapy was delivered to patient 12. In this manner,screen 238 presents graph 240 to compare the baseline proportionalpostures state information to posture-responsive proportional posturestate information generated and displayed separately according to theamount of time since the posture-responsive therapy was activated. Whilethe posture-responsive proportional posture state information has beengenerated in the example of FIG. 14 according to the first month andsecond month of PRS therapy, other periods of time are contemplated,such as, those on the order of days, weeks, and hours. Furthermore,baseline patient information may also be generated and presentedaccording to particular periods of time within the period of time thatpatient 12 was not receiving posture-responsive therapy.

Similar to graph 232 (FIG. 13), graph 240 may facilitate to theevaluation of the posture-responsive therapy delivered to patient 12based on the posture state behavior of patient 12 prior to delivery ofposture-responsive therapy compared to that of the posture statebehavior since the posture-responsive therapy has been active. As shownon patient information graph 240 for the baseline time period, posturestate graph 240 indicates that patient 12 was in was in the lying downposture 80 percent of the time, the upright posture 15 percent of thetime, and the upright and active posture state only 5 percent of thetime. As mentioned above, the lying down posture state may include:lying front, lying back, lying right, and lying left. The upright andactive posture state indicates that patient 12 was upright in additionto being engaged in some sort of activity, such as walking or running,as opposed to remaining stationary. In contrast, posture duration graph240 shows that in the first month since posture-responsive therapy hasbeen active, patient 12 was in the lying down posture 60 percent of thetime, the upright position 25 percent of the time, and the upright andactive posture 10 percent of the time. Moreover, posture duration graph240 shows that in the second month since posture-responsive therapy hasbeen active, patient 12 was in the lying down posture 45 percent of thetime, the upright position 30 percent of the time, and the upright andactive posture 20 percent of the time. Based on graph 240, a clinicianor patient may recognize a trend indicating that patient 12 is in theupright posture state for a much greater duration after PRS therapy hasbeen active than when compared to the time period prior to PRS therapybeing activated, and that the effect on the posture state behavior ofpatient 12 from PRS therapy is continuing to increase as timeprogresses. In some cases, a clinician or patient may infer from suchdata that patient 12 may be responding beneficially toposture-responsive therapy.

FIG. 15 is a conceptual diagram illustrating an example user interface244 presenting a comparison of baseline sleep quality information toposture-responsive sleep quality information. Similar to FIG. 13, userinterface 244 is described generally as being displayed by externalprogrammer 20. However, user interface 236 may also be displayed bypatient programmer 30, clinician programmer 60, or some other externaldevice. In any case, user interface 236 displays baseline andposture-responsive sleep quality information generated based on posturestate data indicative of the posture state of patient 12 during timeperiods when posture-responsive therapy is and is not, respectively,delivered by IMD 14 to patient 12.

In the example of FIG. 15, screen 246 of user interface presents patientinformation graph 248 and difference indicator 250. Patient informationgraph 248 displays both baseline sleep quality information andposture-responsive sleep quality information consistent with thatgenerated by processor 104 (FIG. 6) based on posture state data acquiredfrom IMD 14 and/or external sensing device 15. Patient information graph248 includes the average number of posture changes made by patient 12when lying. A posture change when lying may be defined as any change inposture state between the posture states of lying front, lying back,lying right, and lying left.

Screen 246 of user interface 244 may present graph 248 to a user, suchas a clinician or patient, to compare the baseline sleep qualityinformation to posture-responsive sleep quality information generated byprogrammer 20, as described above. Graph 240 may facilitate to theevaluation of the posture-responsive therapy delivered to patient 12based on the posture state behavior of patient 12 prior to delivery ofposture-responsive therapy compared to that of the posture statebehavior since the posture-responsive therapy has been active. Patientinformation graph 240 in FIG. 15 includes two bar charts with numericaltext that indicates that patient 12 made an average of 50 posture statechanges when lying before PRS therapy was delivered and an average of 25posture state changes when lying with PRS therapy active. The timeinterval for the baseline and posture-responsive sleep qualityinformation may be days, weeks, months, or any other appropriate timeperiod. Furthermore, difference indicator 250 presented on screen 246indicates the percent difference between the baseline sleep qualityinformation and posture-responsive sleep quality information shown inpatient information graph 248. In particular, the text of differenceindicator 250 indicates that the average number of posture changes bypatient 12 with PRS active is 50% less than the average number ofposture changes before PRS was delivered, i.e., during the time periodcorresponding to the baseline sleep quality information. Based on graph248, a clinician or patient may recognize that patient 12 is averagingless lying posture changes since PRS therapy has been active compared tothe time period prior to PRS therapy being activated and, in particular,that the average number had decreased by 50%. In some cases, a clinicianor patient may infer from such data that patient 12 may be respondingbeneficially to posture-responsive therapy, at least in terms of sleepquality.

FIG. 16 is a conceptual diagram illustrating an example user interface252 presenting a comparison of baseline therapy adjustment informationto posture-responsive therapy adjustment information. Similar to FIG.13, user interface 252 is described generally as being displayed byexternal programmer 20. However, user interface 252 may also bedisplayed by patient programmer 30, clinician programmer 60, or someother external device. In any case, user interface 252 displays baselineand posture-responsive therapy adjustment information generated based ontherapy adjustment data indicative of therapy adjustments made bypatient 12 during time periods when posture-responsive therapy is and isnot, respectively, delivered by IMD 14 to patient 12.

In the example of FIG. 16, screen 254 of user interface 252 presentspatient information graph 256. Patient information graph 256 displaysboth baseline therapy adjustment information and posture-responsivetherapy adjustment information consistent with that generated byprocessor 104 (FIG. 6). Further, patient information graph 256 displaysbaseline therapy adjustment information corresponding to individual timeperiods both before PRS therapy was turned on and after the PRS wasturned off, as well as displaying posture-responsive therapy adjustmentinformation corresponding to the time period when PRS was turned on. Theposture adjustment information is presented according to the number ofpatient therapy adjustments per day, which may be generated by processor105 (FIG. 6) based on the therapy adjustment data acquired from IMD 14and/or external sensing device 15. The therapy adjustment informationmay generated by processor 105 for any desired time period, includingminutes, hours, days, weeks, and months. In some cases, the therapyadjustment information, or any patient information, may be calculatedrelative to programming sessions.

Screen 254 of user interface 252 may present graph 256 to a user, suchas a clinician or patient, to compare the baseline therapy adjustmentinformation to posture-responsive therapy adjustment informationgenerated by programmer 20, as described above. Graph 252 may facilitateto the evaluation of the posture-responsive therapy delivered to patient12 based on the posture state behavior of patient 12 prior to deliveryof posture-responsive therapy compared to that of the posture statebehavior since the posture-responsive therapy has been active. Patientinformation graph 240 in FIG. 15 includes a plot indicating that thenumber of daily therapy adjustments made by patient 12 began decreasingaround the time that PRS was turned on, and then leveled off atapproximately the time that PRS was turned off. Graph 256 also indicatesthat the number of posture changes made by patient 12 per day wasmaintained at the approximate level observed when the PRS was turned offfor a certain period of time after PRS was turned off, then increasingsome time after. The time interval for the baseline andposture-responsive adjustment information shown in graph 256 may bedays, weeks, months, or any other appropriate time period. Based ongraph 256, a clinician or patient may recognize that the number of dailytherapy changes for patient 12 decreased when PRS therapy was turned oncompared to the time period prior to PRS therapy being turned on.Additionally, based on graph 256, a clinician or patient may recognizethat the effects of PRS therapy with respect to the number of therapychanges per day may realized to some extent ever after PRS therapy hasbeen turned off. In some cases, a clinician or patient may infer fromsuch data that patient 12 may be responding beneficially toposture-responsive therapy, at least in terms of therapy adjustments.

Baseline and posture-responsive patient information may be presented toa user in any manner that allows for the user to evaluate one or moreaspects of the posture state and/or therapy adjustment behavior of apatient receiving posture-responsive therapy by comparison. FIGS. 13-15are only examples of techniques for presenting such patient informationto a user. Other examples of techniques for presenting patientinformation to a user, whether it be baseline, posture-responsivepatient information or both, may also include those examples describedin co-pending U.S. patent application Ser. No. 12/433,632 to Skelton etal., filed Apr. 30, 2009, titled “DATA ANALYSIS FOR POSTURE RESPONSIVETHERAPY,” and co-pending U.S. Provisional Patent Application Ser. No.61/080,000, to Skelton, et al., filed Jul. 11, 2008, titled “DATAANALYSIS FOR POSTURE RESPONSIVE THERAPY”.

Certain examples have been described in which information is processedand presented to a user in one form or another, e.g., the presentationof baseline and posture-responsive patient information generated basedon appropriate patient data. In some examples, information processed andpresented to a user may be processed and/or presented via any suitableexternal programming device, such as programmer 20, patient programmer30 (FIG. 2), and clinician programmer 60 (FIG. 3). In other examples,the information may be processed and/or presented via a computer thatcommunicates with programmers 20, 30, and 60, and/or IMD 14.

The techniques described in this disclosure may be implemented, at leastin part, in hardware, software, firmware or any combination thereof. Forexample, various aspects of the techniques may be implemented within oneor more microprocessors, DSPs, ASICs, FPGAs, or any other equivalentintegrated or discrete logic circuitry, as well as any combinations ofsuch components, embodied in programmers, such as physician or patientprogrammers, stimulators, or other devices. The term “processor” or“processing circuitry” may generally refer to any of the foregoing logiccircuitry, alone or in combination with other logic circuitry, or anyother equivalent circuitry.

When implemented in software, the functionality ascribed to the systemsand devices described in this disclosure may be embodied as instructionson a computer-readable medium such as RAM, ROM, NVRAM, EEPROM, FLASHmemory, magnetic media, optical media, or the like. The instructions maybe executed to support one or more aspects of the functionalitydescribed in this disclosure.

In addition, it should be noted that the systems described herein maynot be limited to treatment of a human patient. In alternative examples,these systems may be implemented in non-human patients, e.g., primates,canines, equines, pigs, and felines. These animals may undergo clinicalor research therapies that my benefit from the subject matter of thisdisclosure.

Many examples of the disclosure have been described. Variousmodifications may be made without departing from the scope of theclaims. These and other examples are within the scope of the followingclaims.

1. A method comprising presenting, via one or more processors, baselinepatient information generated based on first patient data relative topatient information generated based on second patient data, wherein thefirst patient data comprises at least one of first posture state dataindicative of a plurality of posture states of a patient during a firsttime period or first therapy adjustment data indicative of a pluralityof patient therapy adjustments during the first time period, wherein thesecond patient data comprises at least one of second posture state dataindicative of a plurality of posture states of the patient during asecond time period or second therapy adjustment data indicative of aplurality of patient therapy adjustments during the second time period,and wherein therapy is not delivered to the patient according to adetected posture state of the patient during the first time period, andtherapy is delivered to the patient according to the detected posturestate of the patient during the second time period.
 2. The method ofclaim 1, wherein the baseline patient information comprises at least oneof baseline posture state information or baseline therapy adjustmentinformation.
 3. The method of claim 2, wherein the baseline posturestate information comprises at least one of baseline sleep qualityinformation, baseline proportional posture information, or baselineposture state adjustment information.
 4. The method of claim 2, whereinthe baseline therapy adjustment information comprises a number oftherapy adjustments received over the first time period.
 5. The methodof claim 1, further comprising modifying one or more aspects of thetherapy based on the comparison of the baseline patient information andthe patient information.
 6. The method of claim 5, wherein modifying oneor more aspects of the therapy based on the comparison comprises atleast one of terminating, adjusting, or initiating one or more aspectsof posture-responsive therapy.
 7. The method of claim 1, furthercomprising generating the first posture state data, wherein generatingthe first posture state data comprises receiving posture state sensordata and detecting the posture state of the patient based on the posturestate sensor data.
 8. The method of claim 1, further comprisingcomparing the baseline patient information to the patient informationgenerated based on the second patient data.
 9. The method of claim 1,further comprising determining one or more differences between thebaseline patient information and the patient information, whereinpresenting the baseline patient information generated based on firstpatient data relative to patient information generated based on secondpatient data comprises presenting the one or more differences betweenthe baseline patient information and the patient information to a user.10. The method of claim 1, wherein presenting the baseline patientinformation generated based on first patient data relative to patientinformation generated based on second patient data comprises presentingthe baseline patient information generated based on first patient datarelative to patient information generated based on second patient datavia a user interface display.
 11. The method of claim 1, furthercomprising: acquiring the second patient data; and generating thepatient information based on the second patient data.
 12. The method ofclaim 1, wherein at least a portion of the first time period is afterthe second time period.
 13. The method of claim 1, wherein the firsttime period comprises a time period after the second time period and atime period before the second time period, wherein the baseline patientinformation comprises first baseline patient information based onpatient data from the time period after the second time period andsecond baseline patient information based on patient data from the timeperiod before the second time period.
 14. A system comprising one ormore processors configured to present baseline patient informationgenerated based on first patient data relative to patient informationgenerated based on second patient data, wherein the first patient datacomprises at least one of first posture state data indicative of aplurality of posture states of a patient during a first time period orfirst therapy adjustment data indicative of a plurality of patienttherapy adjustments during the first time period, wherein the secondpatient data comprises at least one of second posture state dataindicative of a plurality of posture states of the patient during asecond time period or second therapy adjustment data indicative of aplurality of patient therapy adjustments during the second time period,and wherein therapy is not delivered to the patient according to adetected posture state of the patient during the first time period, andtherapy is delivered to the patient according to the detected posturestate of the patient during the second time period.
 15. The system ofclaim 14, wherein the baseline patient information comprises at leastone of baseline posture state information or baseline therapy adjustmentinformation.
 16. The system of claim 15, wherein the baseline posturesstate information comprises at least one of sleep quality baselineinformation, proportional posture baseline information, or posture stateadjustment information.
 17. The system of claim 15, wherein the baselinetherapy adjustment information comprises a number of therapy adjustmentsreceived over the first time period.
 18. The system of claim 14, whereinthe one or more processors are configured to modify one or more aspectsof the therapy based on the comparison of the baseline patientinformation and the patient information.
 19. The system of claim 18,wherein the one or more processors are configured to at least one ofterminate, adjust, or initiate one or more aspects of posture-responsivetherapy to modify the one or more aspects of the therapy.
 20. The systemof claim 14, wherein the one or more processors are configured togenerate the first posture state data by at least receiving posturestate sensor data and detecting the posture state of the patient basedon the posture state sensor data.
 21. The system of claim 14, whereinthe one or more processors are configured to compare the baselinepatient information to the patient information generated based on thesecond patient data.
 22. The system of claim 14, wherein the one or moreprocessors are configured to determine one or more differences betweenthe baseline patient information and the patient information, andpresent the one or more differences between the baseline patientinformation and the patient information to a user.
 23. The system ofclaim 14, further comprising a user interface display, wherein the oneor more processors are configured to present the baseline patientinformation generated based on first patient data relative to patientinformation generated based on second patient data via the userinterface display.
 24. The system of claim 14, wherein the one or moreprocessors are configured to acquire the second patient data during thesecond time period, and generate the patient information based on thesecond patient data.
 25. The system of claim 14, wherein at least aportion of the first time period is after the second time period. 26.The system of claim 14, wherein the first time period comprises a timeperiod after the second time period and a time period before the secondtime period, wherein the baseline patient information comprises firstbaseline patient information based on the patient data from the timeperiod after the second time period and second patient information basedon patient data from the time period before the second time period. 27.The system of claim 14, further comprising an external programmercomprising at least one processor of the one or more processor.
 28. Thesystem of claim 14, wherein the one or more processors comprise a firstprocessor and a second processor, the system further comprising amedical device including the first processor, and a programmer includingthe second processor.
 29. A system comprising means for presentingbaseline patient information generated based on first patient datarelative to patient information generated based on second patient data,wherein the first patient data comprises at least one of first posturestate data indicative of a plurality of posture states of a patientduring a first time period or first therapy adjustment data indicativeof a plurality of patient therapy adjustments during the first timeperiod, wherein the second patient data comprises at least one of secondposture state data indicative of a plurality of posture states of thepatient during a second time period or second therapy adjustment dataindicative of a plurality of patient therapy adjustments during thesecond time period, and wherein therapy is not delivered to the patientaccording to a detected posture state of the patient during the firsttime period, and therapy is delivered to the patient according to thedetected posture state of the patient during the second time period. 30.A computer-readable storage medium comprising instructions to cause oneor more processors to present baseline patient information generatedbased on first patient data relative to patient information generatedbased on second patient data, wherein the first patient data comprisesat least one of first posture state data indicative of a plurality ofposture states of a patient during a first time period or first therapyadjustment data indicative of a plurality of patient therapy adjustmentsduring the first time period, wherein the second patient data comprisesat least one of second posture state data indicative of a plurality ofposture states of the patient during a second time period or secondtherapy adjustment data indicative of a plurality of patient therapyadjustments during the second time period, and wherein therapy is notdelivered to the patient according to a detected posture state of thepatient during the first time period, and therapy is delivered to thepatient according to the detected posture state of the patient duringthe second time period.
 31. A method comprising comparing, via one ormore processors, baseline patient information generated based on firstpatient data to patient information generated based on second patientdata, wherein the first patient data comprises at least one of firstposture state data indicative of a plurality of posture states of apatient during a first time period or first therapy adjustment dataindicative of a plurality of patient therapy adjustments during thefirst time period, wherein the second patient data comprises at leastone of second posture state data indicative of a plurality of posturestates of the patient during a second time period or second therapyadjustment data indicative of a plurality of patient therapy adjustmentsduring the second time period, and wherein therapy is not delivered tothe patient according to a detected posture state of the patient duringthe first time period, and therapy is delivered to the patient accordingto the detected posture state of the patient during the second timeperiod.